继承
java只有单继承,只有一个直接父类,所有的类都间接继承自Object类。子类可以得到父类所有的属性和方法,除了构造方法。但不可以直接访问父类私有的属性和方法.
- eclipse中使用ctrl+T查看继承层次
instanceof
运算符判断对象是不是右边的类或子类创建的对象
public class TestExtends{
Student stu = new Student();
stu.rest();
System.out.println(stu instanceof Student);//ture
System.out.println(stu instanceof Person);//true
System.out.println(stu instanceof Object);//true
System.out.println(new Person() instanceof Student);//false
}
class Person{
String name;
int height;
public void rest(){
System.out.printn("休息");
}
}
//实现代码的重用
class Student extends Person{
String major;
public void study(){
System.out.println("学习");
}
}
接口
接口可以多继承
重写(override)
子类重新定义父类里的实现,用子类自身的行为替换父类的行为
三条规则:
- 形参列表相同
- 返回值小于等于父类,如果返回值为对象,子类重写的返回值要与父类返回值相同或是父类返回值的子类
- 子类的访问权限大于等于父类
equals方法
判断两个对象的值是否相同,默认情况下equals返回结果和==相同,检测两个对象的地址名是否相同