【发布时间】:2019-07-03 15:04:34
【问题描述】:
我很难理解抽象在 Java 中的整体使用。
我一直在研究这个链接中的一个例子:https://javatutorial.net/java-abstraction-example 我了解它的实现,但我不明白为什么它甚至是必要的。如果他们只是要在 2 个子类中再次创建,为什么他们在 Employee 类中创建了 calculateSalary 方法?
【问题讨论】:
-
正如链接中所说的
Abstraction is a process of hiding the implementation details from the user所以calculateSalary()抽象函数是在抽象super class中定义的,所以它是sub class(这是扩展员工抽象类)可以根据他们的@987654327 定义@ 和这些algorithm/calculation将对其他entities/user隐藏 -
所有关于面向对象编程和设计的好文章都谈到了抽象。你学过哪些?
-
@VaradMondkar 抽象的好处不是某种隐藏(这意味着某种(错误)保密)。真正的好处是更少的耦合,作为回报,更少的摩擦。推荐观看this youtube snippet of Uncle Bob talking about polymorphism and decoupling (the relevant part is about 15 minutes long)。
-
@Turing85 感谢您更正和分享视频。
标签: java abstraction