• java基础类库


    https://blog.csdn.net/qq_41819893/article/details/121068788

    java基础类库

    java以基础类库JFC的形式为程序员提供变成接口API,类库中的类按照用途归属于不同的包中。

    1.java.lang包

    java最常用的包都属于该包,程序不需要注入此包,就可以使用该包中的类,利用这些类可以设计最基本的JAVA程序

    1. String类,提供了字符串连接,比较,字符定位,字符串打印等处理方法
    2. StringBuffer类,提供字符串进一步处理方法,包括子字符串处理,字符串添加插入,字符替换等
    3. System,提供对标准输入,输出设备io的读写方法,包括键盘,屏幕的in/out控制。常用的System.out.print(),System.out.println()都是该类的静态变量输出流out所提供的方法
    4. Thread类,提供java多线程的处理方法,包括线程的悬挂,睡眠,终止和运行的个。
    5. Math类,提供大量的数学方法
    6. Object类,这是java类的祖先类,该类为所有Java类提供了调用Java垃圾回收对象方法以及基于对象线程安全的等待,唤醒方法
    7. Throwable类,该类是Java错误,异常类的祖先类,为Java处理错误,异常提供了方法

    2.java.io包

    该包的类提供数据流方式的系统输入输出控制、文件和对象的读写串行化处理,比较常用的类包括:BufferInputStream、BufferOutputStream、BufferedReader、BufferedWriter、DataInputStream、DataOutputStream、File、FileReader、FileWriter、FileInputStream和FileOutputStream等。

    3.java.util包

    该包提供时间日期、随机数以及列表、集合、哈希表和堆栈等创建复杂数据结构的类,比较常见的类有:Date、Timer、Random和LinkedList等。

    System类

    System类代表当前Java程序的运行平台,程序不能创建System类的对象,System类提供了一些类变量和类方法,允许直接通过System类来调用这些类变量和类方法。可以获取一些系统相关信息

    public static void main(String[] args) throws Exception{
    	// 获取系统所有的环境变量
    	Map<String,String> env = System.getenv();
    	for (String name : env.keySet()){
    		System.out.println(name + " ---> " + env.get(name));
    	}
    	// 获取指定环境变量的值
    	System.out.println(System.getenv("JAVA_HOME"));
    	// 获取所有的系统属性
    	Properties props = System.getProperties();
    	// 将所有系统属性保存到props.txt文件中
    	props.store(new FileOutputStream("props.txt"), "System Properties");
    	// 输出特定的系统属性
    	System.out.println(System.getProperty("os.name"));
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    System的计时方法:currentTimeMillis()(毫秒)和nanoTime()(纳秒),相对于1970年

    System的输入输出:in,out,err,提供了setInt()、setOut()、setErr()方法

    System类提供一个identityHashCode(Object x),返回指定对象的精确hash Code值,根据对象地址的到,可以唯一标识一个对象

    Runtime类

    Runtime类代表JAVA程序的运行时坏境,每个Java程序都有一个与之对应的Runtime实例。应用程序不能创建自己的Runtime实例,但是可以通过getRuntime()方法获取与之关联的Runtime对象

    与System类似,Runtime提供了gc()和runFinalization(),并提供了load(String filename)和loadLibrary(String libname)来加载文件和动态链接库

    Runtime可以访问JVM的相关信息:

    public static void main(String[] args){ // 获取Java程序关联的运行时对象 
        Runtime rt = Runtime.getRuntime(); 
        System.out.println("处理器数量:" + rt.availableProcessors()); 
        System.out.println("空闲内存数:" + rt.freeMemory()); 
        System.out.println("总内存数:" + rt.totalMemory()); 
        System.out.println("可用最大内存数:" + rt.maxMemory()); 
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    String、StringBuffer和StringBuilder类

    String类是不可变类,即一旦一个String对象被创建以后,包含在这个对象的字符序列是不可改变的,直到这个对象销毁。

    StringBuffer对象代表一个字符序列可变的字符串,当一个StringBuffer被创建以后,通过StringBuffer提供的append()、insert()、reverse()、setCharAt()、setLength()等方法可以改变这个字符串对象的字符序列。一旦通过StringBuffer生成最终想要的字符串,就可以调用它的toString()方法将其转化成一个String对象

    StringBuilder从JDK1.5开始使用,与StringBuffer类似,不同的是StringBuffer是线程安全的,而StringBuilder没有线程安全,性能略高。通常考虑StringBuilder类

    常用类 Object类

    Object是所有类,数组,枚举类的父类。也就是说Java允许把人和类型的变量赋给Object类型的变量,Object提供了如下几个常用方法:

    boolean equals(Object obj):判断指定对象与该对象是否相等
    finalize():清理资源
    getClass():返回对象的运行时类
    int hashCode():返回该对象的hashCode值
    String toString():返回该对象的字符串表示
    wait(),notify(),notifyAll()

    java7新增的Object类

    若不确定一个对象是否为null就用toString()则可能引起空指针异常,而Object提供的toString(Object o)则不会,若为空,则返回null字符串

    java8(jdk1.8)新增日期,时间包

    java8专门新增了一个Java.time包

  • 相关阅读:
    【Linux】linux的shell脚本
    Service详解「2」
    基于YOLOv8深度学习的无人机视角地面物体检测系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标检测
    【正点原子FPGA连载】 第七章 Verilog HDL语法 摘自【正点原子】DFZU2EG/4EV MPSoC 之FPGA开发指南V1.0
    项目管理证书 PMP 的含金量高吗?
    AI-“国外一开源,国内就创新”!
    HTML5语义化标签解释说明
    微信公众号推文怎么做?
    lazarus-2.2.6-fpc-3.2.2-win64 分享在百度网盘上
    【AI视野·今日NLP 自然语言处理论文速览 第四十期】Mon, 25 Sep 2023
  • 原文地址:https://blog.csdn.net/weixin_43847969/article/details/125595440