什么是抽象的真正定义?
我在几个网站中看到了抽象的不同含义。什么是抽象的真正定义?
有些网站说,
选择相关的数据,并且忽略不重要的数据
有些网站说,
来自同一类型的对象
的以普通类
作为一个例子当与公共汽车,货车和汽车相比时,车辆类别可以被看作摘要。
我混淆了这些定义..什么是正确的?
抽象是能够使用高级概念而忽略低级细节。
我喜欢我在麦康奈尔书中看到了例如“代码完成”:
如果你引用一个对象为“家”而不是 木材,玻璃和钉子的组合,您使用的是抽象。
抽象是“代表基本特征而不代表背景细节。”
抽象让你专注于对象的作用,而不是它如何做。
抽象通过提供相关信息为您提供了类或对象的一般视图。
抽象是隐藏对象的工作风格,并以可理解的方式显示对象的信息的过程。抽象的
现实世界的例子: -
假设你有一个对象的手机。
假设你有3个手机如下: -
- 诺基亚2700(特点: - 呼叫,短信,FM收音机,MP3,摄像头)
- 黑莓(特点:-Calling,短信, FM收音机,MP3,摄像头,视频录制,阅读电子邮件)
- 黑莓(特点:-Calling,短信,FM收音机,MP3,摄像头,视频录制,阅读电子邮件)
摘要信息(必要和通用信息n)对象“移动电话”是拨打任何号码并可以发送短信。“
因此,对于手机的对象,你将有抽象类似以下内容: -
abstract class MobilePhone
{
public void Calling();
public void SendSMS();
}
public class Nokia1400 : MobilePhone
{
}
public class Nokia2700 : MobilePhone
{
public void FMRadio();
public void MP3();
public void Camera();
}
public class BlackBerry : MobilePhone
{
public void FMRadio();
public void MP3();
public void Camera();
public void Recording();
public void ReadAndSendEmails();
}
抽象是指将所有的变量和方法,一类是必要的
例如:。 - 抽象类和抽象方法
抽象是常有的事情:
例子:
如果有人在你的拼贴告诉你填写申请表格,你填好您的详细信息,如姓名,住址,出生数据,这学期,百分比,你得等 如果某些医生给你一个填写细节的申请,你将填写细节,如姓名,地址,出生日期,血型,身高和体重。
在上面的例子中看到什么是常见的东西?年龄,姓名,地址 - 因此您可以创建由称为抽象类的常见事物组成的类。该类不完整,可以由其他类继承。
最简单的抽象定义是“隐藏实现细节的规范”。 最好的实时例子是:假设你是一个驱动程序,那么你需要知道“如何驾驶一辆汽车(它的规格)”,而不是汽车的实施细节(如引擎是如何构建等)。
最简单的编程示例是System.out.println()函数。作为程序员,您需要知道如何使用System.out.println(),而不是其实现细节。希望它清除你的怀疑。
你能问一个关于(特定)计算机科学/编程问题的问题吗?否则,这似乎并不适合你问这个问题...... – Joe 2013-02-17 08:49:33
这是第二个。第一个可以被称为例如。功能选择。 – 2013-02-17 09:07:06