继承成员变量和成员方法的特点

 1.子类继承父类,那么子类继承了父类的成员变量和成员方法,例如name和age

2.当子类和父类中拥有相同名字的非静态成员变量,那么分别独自管理。特别的,当子类引用指向父类对象的时候

 

package leetcode.editor.cn;
class Text111 {
    String person;
    String name;
    int age;
    public Text111 (){
        this.person="父类构造器大学生";
        this.name="父类构造器陈涛";
        this.age=40;
    }
    public Text111(String person,String name,int age){
        this.person=person;
        this.name=name;
        this.age=age;
    }
    public void fu() {
        System.out.println("person:"+this.person+" name:"+this.name+" age:"+this.age);
    }
    public void methodZi() {
        System.out.println("父类方法,子类将重写");
    }

}
class child extends Text111{
    String person;
    child(){
        this.person="子类构造器大学生";
    }
    child(String person,String name,int age){
        this.person=person;
        this.name=name;
        this.age=age;
    }

    public void voidZi() {
        System.out.println("person:"+this.person+" name:"+this.name+" age:"+this.age);
    }

    public void voidFu() {
        System.out.println("person:"+super.person+" name:"+super.name+" age:"+super.age);
    }

    public void methodZi() {
        System.out.println("子类重写方法");
    }


}

public class test{
    public static void main(String[] args) {


        System.out.println("~~~调用有参构造函数~~~~");
        child a=new child("有参构造大学生","陈涛",13);//调用有参构造方法复制
        System.out.println(a.person);
        //有参构造学生
        a.voidZi();
        //有参构造学生,陈涛,13
        a.voidFu();
        //父类构造器大学生,陈涛,13
        a.fu();
        a.methodZi();
        //父类构造器大学生,陈涛,13

        System.out.println("~~~调用无参构造函数~~~~");
        child b=new child();
        //调用无参构造构造方法
        System.out.println(b.person);
        //子类构造器大学生
        b.voidZi();
        //子类构造器大学生,父类构造器陈涛,40
        b.voidFu();
        //父类构造器大学生,父类构造器陈涛,40
        b.fu();
        //父类构造器大学生,父类构造器陈涛,40


        System.out.println("~~~调用无参构造函数,子类引用指向父类~~~~");
        Text111 c=new child();//调用无参构造构造方法,子类引用指向父类
        System.out.println(c.person);
        c.fu();
        c.methodZi();
        //父类构造器大学生,父类构造器陈涛,40
        System.out.println(c.person);
        //父类构造器大学生

        System.out.println("~~~调用有参构造函数,子类引用指向父类~~~~");
        Text111 d=new child("学生","涛",13);//调用有参构造方法
        System.out.println(d.person);
        //父类构造器大学生
        d.fu();
        //父类构造器大学生;涛;13
        d.methodZi();
    }
}
运行结果:
~~~调用有参构造函数~~~~
有参构造大学生
person:有参构造大学生 name:陈涛 age:13
person:父类构造器大学生 name:陈涛 age:13
person:父类构造器大学生 name:陈涛 age:13
子类重写方法
~~~调用无参构造函数~~~~
子类构造器大学生
person:子类构造器大学生 name:父类构造器陈涛 age:40
person:父类构造器大学生 name:父类构造器陈涛 age:40
person:父类构造器大学生 name:父类构造器陈涛 age:40
~~~调用无参构造函数,子类引用指向父类~~~~
父类构造器大学生
person:父类构造器大学生 name:父类构造器陈涛 age:40
子类重写方法
父类构造器大学生
~~~调用有参构造函数,子类引用指向父类~~~~
父类构造器大学生
person:父类构造器大学生 name:涛 age:13
子类重写方法

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值