java基础总结
day08 面向对象02 : this与super,继承,抽象类,Object
1.this与super
- this:
this表示调用该方法的对象
- super:
在子类中使用,表示该类的父类引用,super.父类方法,用于引用父类方法
2.继承
- 通过关键字extends进行继承
- 继承主要是为了减少多个类的代码复用问题
3.抽象类
在继承中,子类的方法可以重新覆盖或者重新定义一个新方法,这样导致了开发时方法不一混乱
在抽象类中,继承了抽象类的子类,必须重新覆盖父类方法,统一了不同人的开发规范
用法:在类与方法前加abstract
4.object
object是所有类的父类或者间接父类
equal方法:底层原理是 ==
- 当比较基本数据类型时,比较两边的值
- 当比较引用类型(对象)时,则比较两个对象的地址
public boolean equals(Object obj) {
return (this == obj);
}
toString方法:
toString方法是输出对象的地址
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
println输出对象是的底层原理是toString方法
public void println(Object x) {
String s = String.valueOf(x);
synchronized (this) {
print(s);
newLine();
}
}
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}