闲谈Java语言中的继承
2009-05-13 23:39
232 查看
继承的概念很好理解。那为什么要使用继承呢? 一般情况下我们理解的是需要代码重用。例如,如果对象A有一个disp()方法,而另一个对象B如果也想拥有这个方法的话,我们可以采用如下的方式:
class A{
public void disp(){......}
}
class B extends A{
......
}
这是Java语言中典型继承的应用。但是我们不难发现,在Java语言中,我们还有另外一种方式使用A类中disp()方法。例如,在B类中实例化一个A,然后调用A类的disp()方法,如下所示:
class A{
public void disp(){......}
}
class B{
A a = new A();
a.disp();
}
这样是不是可以达到相同的目的呢?答案是肯定的。既然都能达到相同的目的,那继承的意义何在?继承的真正意义在于抽象(“抽取像的内容”)。正是由于抽象才使得代码重用得以实现。在Java语言中使用继承的最佳时机,应当是在抽象类中,抽象类是不能实例化的,它仅仅是一个模版而已,而在其它情况下尽量不要使用继承。
我们在Java中仅仅使用单根继承,而取缔多重继承,目的就是要制止继承的烂用。
class A{
public void disp(){......}
}
class B extends A{
......
}
这是Java语言中典型继承的应用。但是我们不难发现,在Java语言中,我们还有另外一种方式使用A类中disp()方法。例如,在B类中实例化一个A,然后调用A类的disp()方法,如下所示:
class A{
public void disp(){......}
}
class B{
A a = new A();
a.disp();
}
这样是不是可以达到相同的目的呢?答案是肯定的。既然都能达到相同的目的,那继承的意义何在?继承的真正意义在于抽象(“抽取像的内容”)。正是由于抽象才使得代码重用得以实现。在Java语言中使用继承的最佳时机,应当是在抽象类中,抽象类是不能实例化的,它仅仅是一个模版而已,而在其它情况下尽量不要使用继承。
我们在Java中仅仅使用单根继承,而取缔多重继承,目的就是要制止继承的烂用。
相关文章推荐
- Java语言之继承
- Java语言中的----继承(一)
- Java语言基础--继承
- java语言中的继承概述
- 澄清Java语言接口与继承的本质
- 澄清Java语言接口与继承的本质z
- Java语言接口与继承的本质
- Java语言中的----继承(二)
- Java语言入门教程(十二):Java语言中继承之基本概念
- java语言程序设计 李元朝 第7章 类的继承和多态机制 练习题答案
- java语言:方法重载&方法重写&继承
- Java语言中的继承
- 为什么Java语言中,类与类之间只能单根继承,类与接口可以多重实现,接口与接口却多根继承
- 澄清Java语言接口与继承的本质
- Java语言深入-构造函数的继承问题-Java基础-Java-编程开发
- 浅谈Java语言接口与继承本质区别(转载)
- Java 语言基础之So easy继承
- javaSE_8系列博客——Java语言的特性(五)--接口和继承(3)--实现接口
- Java语言接口与继承本质( 很经典)
- 澄清Java语言接口与继承的本质