百科问答小站 logo
百科问答小站 font logo



多用组合少用继承中,接口继承算不算一种组合? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

我不知道多用组合少用继承是怎么搞出来的。一定要说的话,正确的说法应该是不要用继承来解决代码复用的问题,继承就是继承的语义,要解决代码复用问题应该优先考虑组合。

但这也不是铁板一块,并不是说用继承来实现代码复用就有多么不可取,只是说把继承和复用分开来,代码复用不是非用继承不可,不要滥用继承。


所以总的来说,和接口没啥关系。


user avatar   radius 网友的相关建议: 
      

扣字面意思的话,接口是实现而不是继承。

我认为接口中没有可复用的代码,因此不算组合。


实际上,在继承与组合的讨论种,是不存在接口的。

举个例子,我们有一个Color类,现在需要实现一个Button类

       //继承 class Button extends Color {     ... } //组合 class Button {     //如果Color是接口,就不能new了     Color color = new Color();     ... }     

可以看到,继承和组合都是为了复用Color的代码,而接口是没有方法实现的,也就没有需要复用的代码。

因此问题不成立。


user avatar   winter-25 网友的相关建议: 
      

女王:求求题主放过我,我可不敢有什么政绩。。。




  

相关话题

  同时会C#、Qt还有Python是一种什么体验? 
  能否把高版本的libstdc++静态连接到一个只暴露纯C接口的动态库中,给低版本c++程序调用? 
  Python是不是被严重高估了? 
  如何抽象评判现有语言优劣,继而设计一款别具优雅的计算机语言 X ? 
  请问数学的函数和编程语言的函数有什么区别呢? 
  如果一瞬间让所有编程语言的0.1 + 0.2 == 0.3,会造成多大影响? 
  想做一个网站,如何跳过学代码编程,就直接把网站建? 
  如何直接跳出深层递归而不是一层一层跳出? 
  为什么一些人很瞧不起 Java? 
  VS2013如何在不使用插件的情况下显示引用数量? 

前一个讨论
拿了几十万托人办事,事办成了,但对方并没有花多少钱,这种情况属于诈骗吗?
下一个讨论
一个初学者想尽可能的理解程序和编程的核心,应该看什么呢?





© 2025-05-11 - tinynew.org. All Rights Reserved.
© 2025-05-11 - tinynew.org. 保留所有权利