java基础---函数
1 函数调用内存图
方法运行需要进栈(压栈)
成员方法在堆里面保存的是一个地址值
3 局部变量,成员变量
重点是看等号左边
this 一定在方法里面
3 成员方法(成员变量与成员方法正好相反)
重点是看new谁
4 构造方法
当你在使用new的时候其实就是在调用构造方法
5 随机数
6 三个数比较大小
7 匿名对象
8 Object
Object是最顶层的类
默认继承Object类
Object getclass()
Object ToString()
如果直接打印对象的引用,会默认调用toString()方法
9 equals()与==
比较地址值
这是向下转型,因为Object里面没有.name
下面这里调用了String.equals()方法
区别
为什么equals()方法要重写?
判断两个对象在逻辑上是否相等,如根据类的成员变量来判断两个类的实例是否相等,而继承Object中的equals方法只能判断两个引用变量是否是同一个对象。这样我们往往需要重写equals()方法。
我们向一个没有重复对象的集合中添加元素时,集合中存放的往往是对象,我们需要先判断集合中是否存在已知对象,这样就必须重写equals方法。