大家好,今天小编关注到一个比较有意思的话题,就是关于java语言改装的问题,于是小编就整理了1个相关介绍Java语言改装的解答,让我们一起看看吧。
JAVA为什么要interface,是为了尽可能替代类的继承吗?
inter face 类似于硬件USB !除非不对接通讯,那么就无法编译顶多算是个文档记事本。
不过inter face 这个名称随便定义,不一定需要inter face ,只不过开方商建立的平台命名为inter face ,这些东西由策划者来决定,就好比我在地图里面随便画个圈叫什么这个由你决定,那么这个圈里面任意发挥,类似分区一样,你要跨过这个圈内部区域,你得通过海关认证,也可以说是跨省,那么整张内存叫做国家,inter fface 是省名,内部还有省府,市,县镇,乡等等分类,那么你所写程序只能在这个省内部操作,你要跨省就要***签字审核,叫做编译器,你才能正常跨省运送!
那么J***A 为何设计inter face 不就清楚了
interface是接口的意思。接口意味着一种契约,相对于类而言接口的抽象程度更高。接口更多的是抽象出统一的行为,是约定;而类的继承是复用,两者的功能和定位有区别,是互补的。
接口定义了某些行为,而实现某个接口就必须实现这些行为。换句话说,某个类实现了接口,就必定具备接口所约定的功能。这样的话,我们就可以***用面向接口编程的方式进行设计。我们看不到具体的类的实现,也不需要看到。我们只需要看到接口就可以了,然后就可以根据接口所提供的功能进行调用。
更具体的推荐看下j***a 编程思想。
首先,对于J***a语言来说,接口(interface)占据着非常重要的地位,如果没有接口,J***a语言无论从功能性上,还是扩展性上,都会大打折扣。
从技术体系结构上来看,J***a语言借助于接口,可以完成三部分功能,其一是接口定义了J***a语言当中的“全抽象”概念。借助于接口的全抽象概念,J***a可以实现定义和实现的分离,这样可以更有利于J***a语言提出的“按角色开发”的相关概念,从而能够让J***a语言可以适配更多的技术体系(容器),这对于J***a语言的迅速普及具有非常重要的意义。
其二是接口为J***a赋予了较强的扩展性,而借助于接口的扩展性,J***a语言能够在不同时期找到自己的位置,从而实现持续发展。比如在Web开发、移动互联网开发和大数据开发时代,J***a语言都能够得到大量的使用,这其中接口起到了非常关键的作用。
其三是接口为J***a的模块化奠定了基础,这一点在JDK9之后,得到了较为彻底的体现。实际上,J***a语言的模块化问题一直困扰着很多程序员,J***a语言自身一直没有为模块化提供基础支撑,这也促使了OSGI等模块化框架得到了广泛的应用,但是到JDK9之后,J***a语言提供了模块化支撑,这使得J***a语言的动态扩展性能得到了基础性地支撑。
J***a中的接口和继承并不是解决同样的问题,实际上,J***a语言当中的继承在很多场景下并不建议使用,原因是继承本身属于“强耦合”的概念,强耦合本身有非常多的弊端,为程序的复用和维护也带来了一定的困难。当然,继承作为面向对象语言的三大特征之一,如果合理地运用,也会带来很多方便,也会更全面地描述各种模型。
虽然在很多场景下,使用接口要更好一些,但是接口的定义并不是为了取代继承,二者之间的定位也有非常清晰的界定。可以说,继承提供了“高内聚”的解决方案,而接口则提供了松耦合的解决方案,而这也正是合理使用继承和接口的出发点。
到此,以上就是小编对于j***a语言改装的问题就介绍到这了,希望介绍关于j***a语言改装的1点解答对大家有用。