相关疑难解决方法(0)

抽象VS信息隐藏VS封装

你能告诉我在软件开发中抽象信息隐藏有什么区别吗?

我很迷惑.抽象隐藏了细节实现和信息隐藏抽象的东西的整个细节.

更新:我找到了这三个概念的好答案.请参见下面的单独答案从采取了一些引文出现.

glossary encapsulation ooad abstraction information-hiding

161
推荐指数
6
解决办法
14万
查看次数

信息隐藏和封装之间有什么区别?

我知道由于研究存在差异,但我只能发现它们之间的相似之处...我希望有人能澄清这些差异,如果你能为每个人做一个例子真的有帮助.Java程序也请将此程序视为封装或信息隐藏,甚至两者兼而有之

 class DogsinHouse {
   private int dogs;
   public int getdog() {
     return dogs;
   }

   public void setdog(int amountOfDogsNow) {
     dogs = amountOfDogsNow;
   }
 }
Run Code Online (Sandbox Code Playgroud)

java oop encapsulation

5
推荐指数
1
解决办法
656
查看次数

隐藏实现细节Encapsulation或Abstraction?

有些人将抽象定义为:

抽象通过在基本功能上提供一个层来隐藏实现细节.

它不是封装的一部分来隐藏对象用户的实现细节吗?

让我们说Animal类有函数eat(),那么为对象的用户提供这个接口是封装还是抽象?或提供使用的函数名称是抽象,方法实现部分的隐藏是封装.

我很困惑,因为在许多地方它是抽象的,很多人说实现细节隐藏是封装?

在这个SO问题的最佳答案:

抽象=对象外部; 封装(通过信息隐藏实现)=内部对象.

那么这意味着对象接口暴露是抽象而隐藏在对象内部的数据是封装吗?

java oop c++11

3
推荐指数
1
解决办法
1848
查看次数