Math
math在java.lang包下,所以他不用导包,他也是最终类,所以没有子类
random()返回值能取到0.0,但是不能取到1.0
如果我们要取大于1的数,那么就直接在random后面乘上倍数就好了
System
system在java.lang包下,所以不用导包,他也是最终类,所以没有子类
system不能实例化,且他的成员都被静态修饰,所以不需要创建对象,直接通过类名就可以访问
exit方法,表示退出Java虚拟机,非0表示异常,0表示正常,相当于return 0,程序直接结束
current TimeMillis方法,用来返回当前时间(以毫秒为单位),表示的是当前时间和1970年的差距的毫秒值,然后自己转换成多少年即可
这个方法还可以用来记录程序跑了多长时间,在程序开始时记录一下时间,在程序结束后记录一下时间,然后相减即可
Object
object在java.lang包下,所以不用导包
object类是所有类的祖宗类,所有类都直接或间接的继承自object类
构造方法:public Object()
所以子类的构造方法默认访问的是父类的无参构造方法,因为他们的顶级父类只有无参构造方法
我们的sout打印出来的基本都是toString()方法(Object类中的),但是我们要进行 重写(因为原来的toString是杂乱无章的),我们可以在子类中按alt/option+insert找到tostring,然后即可自动重写mac的insert是fn+回车
所以我们之间sout类名实际上与sout类名.toString()是一样的
object的equals方法
如果要比较二者的值是否相同,不能使用sout(s1==s2),这样子比较的是s1和s2的地址值,而不是内容
但是也不能之间s1.equals(s2),因为object里面的equals方法比较的也是地址,所以我们要重写
重写后要把重写的hashcode删除掉,然后只保留equals即可