继承
子类继承父类的功能
举例:人==》男人女人 打工人==》经理 老板
父类 :
java
public class Uncle {
private String name;
private int age;
//getter setter
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
public void setAge(int age){
this.age=age;
}
public int getAge(){
return age;
}
public void sendHongbao(){
System.out.println("舅舅再发红包");
}
}
子类:大舅
java
public class UncleOne extends Uncle {
public void chouyan(){
System.out.println("大舅喜欢抽烟");
}
}
子类:二舅
java
public class UncleTwo {
public void drinkWine(){
System.out.println("二舅喜欢喝酒");
}
}
子类只能继承自一个父类,不能继承多个父类, 多层继承(不许重复)
//错误代码
public class UncleThree extends Uncle,UncleOne{
}
子类:多层继承
//多层继承
public class UncleOneSon extends UncleOne{
}
在继承中类加载的顺序
先创建父类,再创建子类
父类的构造方法先于子类的构造方法调用
public UncleOne(){
super();//调用父类的构造方法
System.out.println("子类大舅的构造方法被创建了");
}
方法的复写(覆写)override
@Override
public void sendHongbao(){
System.out.println("大舅家道中落红包只有一毛");
}
如果子类没有复写父类的方法,调用的是父类的
如果复写了父类的方法,在调用优先调用子类复写后的方法
方法
1.方法的签名完全一致
2.方法体不同
Final
1.修饰的内容不可以发生改变
1.1 修饰的是基本数据类型,其值不可能发生改变
1.2 修饰的是引用数据类型,引用的地址不能发生改变(不能指向新空间),但是原本引用的空间中的值是可以修该的