9.1 继承

原创 2018年04月16日 19:04:34
继承的概念:

类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有类被称作父类,子类会自动拥有父类所有可继承的属性和方法。

继承的格式与使用:

格式 : class 子类 extends 父类 {}

实例代码:

/*

 * 定义员工类Employee

 */

class Employee {

    String name; // 定义name属性

    // 定义员工的工作方法

    publicvoid work() {

        System.out.println("尽心尽力地工作");

    }

}

/*

 * 定义研发部员工类Developer 继承 员工类Employee

 */

class Developer extendsEmployee {

    // 定义一个打印name的方法

    publicvoid printName() {

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

    }

}

/*

 * 定义测试类

 */

publicclass Example01 {

    publicstaticvoid main(String[] args) {

        Developer d = new Developer(); // 创建一个研发部员工类对象

        d.name = "小明"; // 为该员工类的name属性进行赋值

        d.printName(); // 调用该员工的printName()方法

        d.work(); // 调用Developer类继承来的work()方法

    }

}

运行结果:

        

在上述代码中,Developer类通过extends关键字继承了Employee类,这样Developer类便是Employee类的子类。子类虽然没有定义name属性和work()方法,但是却能访问这两个成员。这就说明,子类在继承父类的时候,会自动拥有父类的成员。

继承的好处及注意事项:

继承的好处:

1、继承的出现提高了代码的复用性,提高软件开发效率。

2、继承的出现让类与类之间产生了关系,提供了多态的前提。

注意事项:

  1、在Java中,类只支持单继承,不允许多继承,也就是说一个类只能有一个直接父类,例如下面这种情况是不合法的。

class A{}

     classB{}

     class Cextends A,B{}  // C类不可以同时继承A类和B类

  2、多个类可以继承一个父类,例如下面这种情况是允许的。

     classA{}

     class Bextends A{}

     class Cextends A{}   // 类B和类C都可以继承类A

  3、在Java中,多层继承是可以的,即一个类的父类可以再去继承另外的父类,例如C类继承自B类,而B类又可以去继承A类,这时,C类也可称作A类的子类。下面这种情况是允许的。

     classA{}

     class Bextends A{}   // 类B继承类A,类B是类A的子类

     class Cextends B{}   // 类C继承类B,类C是类B的子类,同时也是类A的子类

  4、在Java中,子类和父类是一种相对概念,也就是说一个类是某个类父类的同时,也可以是另一个类的子类。例如上面的这种情况中,B类是A类的子类,同时又是C类的父类。


收藏助手
不良信息举报
您举报文章:9.1 继承
举报原因:
原因补充:

(最多只允许输入30个字)