public class ExtendsTest
{
public static void main(String args[]){
new Zi();
}
}
class Fu{
int num;
int num2;
public Fu(){ //构造函数本质上是给自己数据做初始化的,所指向的属性是自己的,指向的函数是子类的
System.out.println("fu"); //类似于多态,父类指向子类实现
num=10;//父类num
show();//子类show
}
public void show(){
System.out.println("fu show"+num);
num2 = 11;//本类num2
System.out.println("fu show"+num2);
show2();//指向子类方法
}
public void show2(){
System.out.println("fu show2");
}
}
// 父类,子类开辟空间--》父类构造函数--》指向父类num--》指向子类show()
class Zi extends Fu{
int num;
int num2 ;
public Zi(){
num = 20;
System.out.println("zi");
}
public void show(){
super.show();
System.out.println("Zi show"+num);//子类num : 0
num2=22; //子类num2
System.out.println("zi show"+num2);
}
public void show2(){
System.out.println("zi show2");
}
}
{
public static void main(String args[]){
new Zi();
}
}
class Fu{
int num;
int num2;
public Fu(){ //构造函数本质上是给自己数据做初始化的,所指向的属性是自己的,指向的函数是子类的
System.out.println("fu"); //类似于多态,父类指向子类实现
num=10;//父类num
show();//子类show
}
public void show(){
System.out.println("fu show"+num);
num2 = 11;//本类num2
System.out.println("fu show"+num2);
show2();//指向子类方法
}
public void show2(){
System.out.println("fu show2");
}
}
// 父类,子类开辟空间--》父类构造函数--》指向父类num--》指向子类show()
class Zi extends Fu{
int num;
int num2 ;
public Zi(){
num = 20;
System.out.println("zi");
}
public void show(){
super.show();
System.out.println("Zi show"+num);//子类num : 0
num2=22; //子类num2
System.out.println("zi show"+num2);
}
public void show2(){
System.out.println("zi show2");
}
}