面相对象的特征之二:继承

目录

一,继承的概念

        1,什么是继承

        2,为什么要使用继承

        3,继承的作用

        4,继承的注意事项                       

二,继承的使用

        1,语法

        2,关键字super


一,继承的概念

        1,什么是继承

                继承的汉语词义是指按照法律或遵照遗嘱接受死者的财产、职务、头衔、地位等。(子继承父)

                 而在java中指一个类不需要自己写某个属性或方法,可以使用另一类的属性或方法。(子类继承父类)

        2,为什么要使用继承

                当有多个类中有多个一样的属性或方法的时候,我们考虑优化,因此需要使用继承。

        3,继承的作用

                继承可以将多个类(子类)中重复的属性或方法提取出来放到父类中,再由这多个类(子类)继承父类,即可使用这些属性和方法,以减少代码的冗余,有效提升代码的复用性。

        4,继承的注意事项                       

                        1,继承需要满足is a的关系,即子类是父类,父类包含子类,如狗是宠物,宠物中有狗狗。

                        2,一个类同时只能继承一个父类。

                        3,Object类是所有类的父类。

                        4,并不是任何内容都可以继承,private 修饰的内容不可以被继承,构造方法不可以被继承,不同包中的被default修饰的内容不可以被继承。

二,继承的使用

        1,语法

                子类  extends  父类

             实例:     

class Dog extends Pet{//子类狗狗  继承  父类宠物
   public void show(){
       setName("旺财");//使用父类set方法
       System.out.println("狗狗的名字是:"+getName());//使用父类get方法
   }
}
class Pet{//父类宠物
    private String name;//私有化属性年龄
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
class Test{
    public static void main(String[] args) {
        Dog dog=new Dog();
        dog.show();
    }
}

          2,关键字super

                                super,用来修饰父类,可以在子类中调用父类的属性和方法。

                                              调用属性 super.属性名

                                              调用方法 super.方法名();

                                               调用构造方法 super();

注:super调用构造方法的时候需要在第一行

                        实例:

class Dog extends Pet{//子类狗狗  继承  父类宠物
    public Dog() {
        super("来福");//调用父类的构造方法
    }
    public void set(){
        super.setName("旺财");//使用父类set方法
    }
    public void show(){
        super.age=12;//调用父类的属性
       System.out.println("狗狗的名字是:"+getName()+"年龄是:"+age);//使用父类get方法
   }
}
class Pet{//父类宠物
    private String name;//私有化属性年龄
    int age;
    public Pet() {
    }
    public Pet(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值