abstraction相关内容

我应该使用公共变量还是私有变量?

我第一次做一个大项目.我有很多类,其中一些有公共变量,一些有带有 setter 和 getter 方法的私有变量,同样有两种类型. 我决定重写此代码以仅使用一种类型.但我不知道我应该使用哪个(仅用于同一对象中的方法的变量始终是私有的,不属于此问题的主题). 我知道理论是什么公共和私人意味着什么,但在现实世界中使用的是什么,为什么? 解决方案 private 数据成员通常被认为是 ..
发布时间:2021-11-26 17:19:19 C/C++开发

什么是谷歌的 Dremel?它与 Mapreduce 有何不同?

Google 的 Dremel 此处描述.Dremel 和 Mapreduce 有什么区别? 解决方案 检查这个 文章.Dremel 是 Hive 的未来应该(并将)成为的样子. MapReduce 及其之上的解决方案(如 Pig、Hive 等)的主要问题是它们在运行作业和获得答案之间存在固有的延迟.Dremel 使用了一种全新的方法(于 2010 年在 google 的那篇论文中提 ..
发布时间:2021-11-26 17:19:10 其他开发

为什么接口比抽象类更受欢迎?

我最近参加了一次面试,他们问了我一个问题“为什么接口比抽象类更受欢迎?" 我尝试给出几个答案,例如: 我们只能获得一个扩展功能 它们是 100% 抽象的 实现不是硬编码的 他们让我使用您使用的任何 JDBC api.“为什么它们是接口?". 我能得到更好的答案吗? 解决方案 那个面试问题反映了提出问题的人的某种信念.我相信这个人是错的,因此你可以选择两个方向之一 ..
发布时间:2021-11-26 17:19:03 Java开发

封装和抽象的区别

我今天接受了采访.我有一个来自 OOP 的问题,关于 Encapsulation 和 Encapsulation 之间的区别抽象? 据我所知,封装基本上是绑定数据成员&成员函数合并为一个名为 Class 的单元.而抽象基本上是为了隐藏实现的复杂性&方便用户访问.我以为她会接受我的回答.但她问,如果两者都是为了隐藏信息,那么这两者的实际区别是什么?我无法给她任何答案. 在问这个问题之前, ..
发布时间:2021-11-26 17:18:56 其他开发

什么是抽象?

我在流程中看到了抽象.我在数据中看到了抽象. 我发现抽象正在丢失不重要的细节. 我认为抽象是为一组元素命名并将它们视为一个单元.(但我不知道为什么这被认为是抽象的.所以,我需要澄清这一点) 我知道也有抽象的层次,虽然这个名字暗示了一些东西,但我没有一个实际的例子,我想不出具体的一个我对抽象的定义感到困惑. > 有人可以写一篇全面的文章吗?抓那个.有人能给出全面的答案吗? ..
发布时间:2021-11-26 17:18:26 其他开发

理解封装和抽象的简单方法

学习 OOP 概念,特别有兴趣深入了解抽象和封装. 已经检查了以下内容 抽象 VS 信息隐藏 VS 封装 抽象和封装的区别? 如果没有一个真实而简单的示例类/代码片段,我很难理解这些概念. 我的一个同事说抽象就是创造抽象用作用域保护其成员变量的类和普通类是称为封装. 有没有一种简单的方法可以让我理解并帮助他人理解它们究竟是什么,而不是重复以下内容? 抽象和 ..
发布时间:2021-11-26 17:18:16 其他开发

C#中的抽象是什么?

我对抽象的许多定义感到困惑.谁能告诉我什么是抽象以及我们如何实现它? 解决方案 抽象在OOP理论中在于只保留特定问题的现实世界对象的相关方面.因此,我们谈论现实的抽象.这是一种减少. 例如,在现实世界中,我们有猫和狗,它们是脊椎动物.这样的动物具有头部和腿部等特性,以及行走和进食等操作.然后我们将定义类,它们将是 Animal、Cat 和 Dog. 所以我们有了继承的概念,其中 ..
发布时间:2021-11-26 17:18:07 C#/.NET

抽象和封装有何不同?

我正在准备面试并决定重温我的 OOP 概念.有数百篇文章可用,但似乎每篇文章对它们的描述都不同.有些说 抽象是“识别具有系统变异;一个抽象代表了共同的模式并提供了一种方法来指定要使用的变体"(理查德加布里埃尔). 并且是通过抽象类实现的. 一些其他说 抽象意味着只向客户展示必要的细节对象 和 假设您的 Employee 类中有一个方法“CalculateSala ..
发布时间:2021-11-26 17:17:56 C#/.NET

接口和类有什么区别,为什么我可以在类中直接实现方法时使用接口?

我知道这是一个非常基本的问题,但面试官问了我一个非常狡猾的方式,我很无助:( 我只知道接口的材料或理论定义,并且还在我参与的许多项目中实现了它.但我真的不明白这为什么以及如何有用. 我也不了解界面中的一件事.例如,我们使用 conn.Dispose(); 在 finally 块中.但我没有看到该类正在实现或继承 IDisposable 接口(SqlConnection)类,我的意 ..
发布时间:2021-11-26 17:17:47 C#/.NET

抽象 VS 信息隐藏 VS 封装

你能告诉我软件开发中抽象和信息隐藏有什么区别吗? 我很困惑.抽象隐藏了细节实现和信息隐藏抽象了事物的全部细节. 更新:我为这三个概念找到了一个很好的答案.请参阅下面的单独答案,以获取从 那里. 解决方案 去源码!Grady Booch 说(在面向对象的分析和设计中,第 49 页,第二版): 抽象和封装是互补的概念:抽象关注对象的可观察行为...封装专注于导致这种行为的实现 ..

抽象和封装的区别?

封装和抽象之间的确切区别是什么? 解决方案 这里的大多数答案都集中在 OOP,但封装开始得更早: 每个函数都是一个封装;在伪代码中: 点 x = { 1, 4 }点 y = { 23, 42 }数字 d = 距离(x,y) 这里,distance 封装了平面内两点之间(欧几里得)距离的计算:它隐藏了实现细节.这就是封装,纯粹而简单. 抽象是的过程概括:采取具体的实施方式,使 ..
发布时间:2021-11-26 17:17:31 其他开发

为什么要使用 getter 和 setter/accessors?

使用 getter 和 setter(仅获取和设置)而不是简单地为这些变量使用公共字段有什么好处? 如果 getter 和 setter 所做的不仅仅是简单的 get/set,我可以很快弄清楚这一点,但我不是 100% 清楚如何: public String foo; 比: private String foo;public void setFoo(String foo) { this ..
发布时间:2021-11-26 17:17:21 Java开发

java中的抽象与抽象

我是一名 java 开发人员,对面向对象的概念有很好的理解(或者,我认为是这样的).现在我正在学习设计模式(从头开始设计模式).我一直在阅读有关 OOPS 概念抽象的内容以简要了解它,阅读更多有关它的内容使我比之前更加困惑. 据我所知,抽象是指隐藏程序的内部细节,同时将接口暴露给其他程序员,而不用担心内部细节.但是,我不明白 抽象类如何适应这种抽象概念,其中抽象类要求我实现抽象方法,在 ..
发布时间:2021-11-26 17:06:06 Java开发

java中的抽象与抽象

我是一名 java 开发人员,对面向对象的概念有很好的理解(或者,我认为是这样的).现在我正在学习设计模式(从头开始设计模式).我一直在阅读有关 OOPS 概念抽象的内容以简要了解它,阅读更多有关它的内容使我比之前更加困惑. 据我所知,抽象是指隐藏程序的内部细节,同时将接口暴露给其他程序员,而不用担心内部细节.但是,我不明白 抽象类如何适应这种抽象概念,其中抽象类要求我实现抽象方法,在 ..
发布时间:2021-11-26 16:16:59 Java开发

为什么要使用 getter 和 setter/accessors?

使用 getter 和 setter(仅获取和设置)而不是简单地为这些变量使用公共字段有什么好处? 如果 getter 和 setter 所做的不仅仅是简单的 get/set,我可以很快弄清楚这一点,但我不是 100% 清楚如何: public String foo; 比: private String foo;public void setFoo(String foo) { this ..
发布时间:2021-11-25 10:09:20 Java开发

JAVA - 抽象

我对 Java 中的抽象有点困惑. 我检查了很多页面,说明抽象是数据隐藏(隐藏实现). 我对抽象的理解是“部分实现".只需在抽象类/接口中定义您将需要的内容,然后扩展/实现它们并添加您自己的功能即可. 我不明白的是这是如何隐藏数据的?实现类/接口后,您将可以访问代码,并根据需要对其进行修改. 我已经检查了很多关于此的问题和文章,但仍然对此感到困惑. 感谢任何帮助.谢谢 ..
发布时间:2021-11-25 09:51:38 Java开发

C++中抽象类和纯抽象类有什么区别?

示例: 迭代器是纯粹的抽象:任何表现得像迭代器是一个迭代器. 什么意思? 解决方案 抽象类至少有一个纯虚函数.这是标准的 C++ 术语. 有些人使用术语纯抽象类来描述一个只有纯虚函数(换句话说,没有数据成员也没有具体函数)的类.这相当于 Java 接口. 现在回答您的实际问题: 迭代器是纯粹的抽象:任何行为类似于迭代器的都是迭代器. 这与抽象类(纯或其他 ..
发布时间:2021-11-25 09:48:26 C/C++开发

java中的抽象与抽象

我是一名 java 开发人员,对面向对象的概念有很好的理解(或者,我认为是这样的).现在我正在学习设计模式(从头开始设计模式).我一直在阅读有关 OOPS 概念抽象的内容以简要了解它,阅读更多有关它的内容使我比之前更加困惑. 据我所知,抽象是指隐藏程序的内部细节,同时将接口暴露给其他程序员,而不用担心内部细节.但是,我不明白 抽象类如何适应这种抽象概念,其中抽象类要求我实现抽象方法,在 ..
发布时间:2021-11-25 09:37:53 Java开发