以下例进行此文描述
将学生(student)和工人(worker)的共性描述提取出来,单独进行描述,只要让学生和工人与单独描述的这个类有关系,就可以了。
class Person { String name; int age; } class Student extends Person { void study() { System.out.println("good study"); } } class Worker extends Person { void work() { System.out.println("good work"); } } public class ExtendsDemo { public static void main(String[] args) { Student s = new Student(); } }
通过上例可得继承的好处:
注意:千万不要为了获取其他类的功能,简化代码而继承,必须是类与类之间有所属关系才可以继承,所属关系是:is a
记住:先有父类,再有子类。
Java语言中,java只支持单继承,不支持多继承。因为多继承容易带来安全隐患,当多个父类中定义了相同功能时,当功能内容不同时,子类对象不确定要运行哪一个。
若Java支持多继承:
class A { void show() { System.out.println("a"); } } class B { void show() { System.out.println("b"); } } class C extends A, B { C c = new C(); c.show(); //此时该打印谁呢? }
但是java保留这种机制,并用另一种体现形式来完成表示——(多实现)
java支持多层继承,也就是一个继承体系。
原文:http://www.cnblogs.com/yerenyuan/p/5203502.html