给Java初学者的学习笔记JAVA学习之路

第12章 Object类,Math类,System类

2019-04-10  本文已影响443人  yangsg

1. Object类

java.lang.Object类是所有引用类型的父类。定义在Object类中的方法,在所有的类中都会被继承到

1.1 构造方法

new Object(); 构建一个普通的Object对象

1.2 API方法

可以看出,在Object类中equals方法的功能与==是一样的
有些类在继承Object类后,会对equals方法进行重写,比如java.lang.String

String类重写了equals方法

x instanceof A 判断对象x是否是类A的对象
instanceof的作用判断x是否为A的一个实例
String类的equals方法比较的是String的内容是否一致。

可以通过重写equals方法,达到判断自己的类是否“相等”的逻辑

public class Student {
    
    public int sno;
    public String sname;

    @Override
    public String toString() {
        return sno+"\t"+sname;
    }   
}

测试类

public class Test2 {

    public static void main(String[] args) {
        Student s1 = new Student();
        s1.sno = 101;
        s1.sname = "杨超越";
        
        System.out.println(s1);//默认调用了toString
    }
}
运行结果

其他API方法参照API文档

2. Math类

Math类提供了基本的数学操作。如基本指数、对数、平方根和三角函数。
它将构造方法私有,不能创建Math类的实例对象,Math类本身还被final修饰,不能被继承。

2.1 静态常量
2.2 静态方法
double a = Math.cbrt(8); //结果是2
double a = Math.cbrt(4); //结果是2
double a = Math.pow(2,3); //结果是8

3. System类

System也是一个私有构造方法并且是final的类,它提供了一些静态属性和方法完成一些常规功能

3.1 静态属性
3.2 静态方法
int[] a = {0,1,2,3,4,5,6,7,8,9};
int[] b = {0,0,0,0,0,0,0,0,0,0};
System.arraycopy(a, 3, b, 3, 5);

for(int i = 0; i < b.length; i++) {
    System.out.print(b[i]+"\t");
}
System.out.println();

运行结果


运行结果

如果b的位置不足以放入拷贝内容,会抛出下标越界异常


一般使用这个方法可以计算一段程序的执行时间。

long l1 = System.currentTimeMillis();
int sum = 0;
for(int i = 0; i < 10000; i++) {
    sum += i;
}
long l2 = System.currentTimeMillis();
System.out.println("程序耗时:"+(l2-l1)+"ms");



Properties p = System.getProperties();
String value = p.getProperty("key");  
System.out.println(value);

key可以使用下图中的具体内容进行替代


key值的一览

4. Properties类(了解)

Properties类是一种“键-值对”存储结构。一个数据包含“Key-Value”两部分,不同数据间,Key不能重复。
myfile.properties配置文件


配置文件内容

读取配置文件(Test类必须与配置文件在同一个包下)

public class Test {
    public static void main(String[] args) throws IOException {
        Properties p = new Properties();
        p.load(Test.class.getResourceAsStream("myfile.properties"));
        String username = p.getProperty("username");
        String password = p.getProperty("password");
        String sex = p.getProperty("sex");
        
        System.out.println(username);
        System.out.println(password);
        System.out.println(sex);
    }
}

运行结果


运行结果
上一篇 下一篇

猜你喜欢

热点阅读