1.创建Uncle
public class Uncle {
private String name;
private int age;
public Uncle(){
}
public String getName(){
return name;
}
public void setName(String name){
this.name =name;
}
public int getAge(){
return age;
}
public void setAge(int age){
this.age = age;
}
@Override
public String toString() {
return "Uncle{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
public void faHongbao(){
System.out.println("舅舅发红包");
}
}
2.创建UncleOne
public class UncleOne extends Uncle{
public void faHongbao(){
System.out.println("大舅发红包");
}
public void songYan(){
System.out.println("大舅喜欢送烟");
}
}
3.创建UncleTwO
public class UncleTwo extends Uncle{
public void faHongbao(){
System.out.println("二舅发红包");
}
}
4.创建运行Dome01以及上下转型
public class Dome01 {
public static void main(String[] args) {
UncleOne dajiu =new UncleOne();
dajiu.faHongbao();
//多态
Uncle dajiu1 =new UncleOne();
dajiu1.faHongbao();
//子类独有的方法会无法在父类中使用
//dajiu1.songYan(); //会报错
UncleOne temp =(UncleOne)dajiu1;
temp.songYan();
Uncle erjiu = new UncleTwo();
erjiu.faHongbao();
//向下转型
Uncle uncle =new Uncle();
uncle.faHongbao();
Uncle uncleTwo =new UncleTwo();
UncleTwo temp = (UncleTwo) uncleTwo;
temp.faHongbao();
}
}