JAVA中extend是什么意思 ?

Python038

JAVA中extend是什么意思 ?,第1张

extends是继承父类,一个类来继承另外一个类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,JAVA中不支持多重继承。

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。

Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

J

首先的话,在 Java 中应该说“扩展”(extend)而不是“继承”(inherit),尽管知道它实现上就是C++那种继承,但逻辑上是不完全相同的。

再考虑到接口即协议,对接口的扩展,或是说对协议的扩展,实际上就包括了对其公用方法的扩展以及对其定义的扩展两个方面,其中扩展接口定义实际上即为对协议添加更多的约束,在减少了其可能包含的类的种类的同时也给了这些类更清晰的定义,也就允许用户基于这更清晰的定义做出更多的操作了。

所以呢,实际类的扩展实际上和继承是相同的,子类确实继承了父类的实现,但接口的扩展则只会获取到父接口的方法声明,继承的意味并不明显,更多的实际上在于对其原协议的扩展,因此应将子接口和父接口间的关系视为扩展而不单单是继承

其实就是多去思考为什么在Java这叫扩展不叫继承,很多问题就迎刃而解了

这个,我的理解是,继承的目的是当你的类需要扩展时使用的,你可能会说在设计模式中应该尽可能的使用对象的组合也就是合成,但举个例子:

你有图形这个类,当你需要三角形时,你会毫不犹豫的继承图形,当你需要矩形时你也继承图形。三角形,矩形都是图形的扩展。按照一般的鸟语(英“鹰”)习惯,extend后面会加s的。