继承初步

1.类的继承

class Animal{
    String name;      //定义name属性
    //定义动物叫的方法
    void shout(){

        System.out.println("动物发出叫声");

    }
}

//定义Dog类继承Animal类
class Dog extends Animal{      //Dog继承Animal,extends为继承的关键词
    //定义一个打印name的方法
    public void printName(){

        System.out.println("name="+name);

    }

}
//定义测试分
public class Demo01 {
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.name = "沙皮狗";
        dog.printName();
        dog.shout();
    }
}

注意:

  • 类只支持单继承,不允许多重继承,也就是一个类只能有一个直接父类。
class A()
class B()
class C extends A,B()   //C类不可以同时继承两个父类
  • 多个类可以继承一个父类。
  • 多层继承是允许的。
  • 子类和父类是相对的概念,也就是说一个类是某个类父类的同时,也可以是另一个类的子类。

2.重写父类方法

class Animal{
    String name;      //定义name属性
    //定义动物叫的方法
    void shout(){

        System.out.println("动物发出叫声");

    }
}

//定义Dog类继承Animal类
class Dog extends Animal{      //Dog继承Animal,extends为继承的关键词
    //定义一个打印name的方法

    void shout(){

        System.out.println("bark...bark...");

    }
}

public class Demo01 {
    public static void main(String[] args) {
        Dog dog = new Dog();     //重写Dog类的是咧对象
        dog.shout();             //调用dog重写的shout()方法
    }
}

注意:

  • 子类会自动继承父类中的方法,但有时在子类中需要对继承的方法进行一些修改,即对父类方法进行重写。
  • 在子类中重写的方法需要和父类被重写的方法具有相同的方法名、参数列表以及返回类型。
  • 子类重写父类方法时,不能使用比父类中被重写的方法更严格的访问权限。

3.super关键字

为了解决:当子类重写父类的方法后,子类对象将无法访问父类被重写的方法。
  • 使用super关键字来调用父类的成员变量和成员变量
super。成员变量
super,成员方法([参数1,参数2...])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值