java接口不具有有实现代码是如何实现方法的,为什么接口无法达到代码复用

java接口不具有有实现代码是如何实现方法的,为什么接口无法达到代码复用,修改某一行为必须在每一个类中修改?

回答:你可以对比抽象类和接口的区别,接口是更高级的抽象,将子类必须进行实现的一些行为写在接口里面,然后子类实现,通过父类进行引用,一般设计模式里面都是这样的情况。而对于抽象类,也可以提供一个默认实现,这时,你不必对每个子类都重写这个方法,这是你自己的想法决定的。代码复用实际是为了简洁,为了更方便进行后期的修改与扩展,以及让结构更清晰。毕竟一个类文件不能写的太大,不然就太复杂了。采用层次性,可以减少很多重复的工作,将结构统一起来,方便别人进行阅读与理解,以后自己看代码也方便理解。
对于小型的设计,你不必完全遵守设计模式,你只需要遵守一个选择,减少重复,规范命名。做到这两点,你会慢慢将自己强迫为优秀规范的代码编写选手

以下答案引用自GPT-3大模型,请合理使用:

示例



因为接口中的方法是抽象的,并未实现代码,所以不能达到代码复用的目的。 修改某一行为必须在每一个类中修改。 例如:

interface Test { String say(); }

class A implements Test { // 修改say方法为实现代码 public String say() { return "A says: " + super.say(); } }

class B implements Test { // 修改say方法为实现代码 public String say() { return "B says: " + super.say(); } }

如果我的回答解决了您的问题,请采纳我的回答

接口就像市面上经常定义的事物标准一样, 就像手机的TYPE-C接口, 规定了输入和输出的标准, 具体什么厂商 采用什么材质 是否快充等等, 不是标准需要关心的细节, 实现这些细节都在类中, 但是这些类 只需要遵循接口标准即可 .

// 华为实现标准
ITypeC typec=new HuaWei();
// 小米实现标准
typec=new XiaoMi();

你只需要关注typec的充电功能即可, typec.charge();

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^