java两种抽象过程_跟我学java编程—理解Java语言的抽象与对象

面向对象编程思想的一个基本方法就是抽象。抽象是从众多的同类事物中抽取出具有共同特征的过程及方法。

例如:苹果、香蕉、葡萄等都属于水果类别,假如我们要给水果找出共同特点,就需要抽取(抽象)苹果、香蕉、葡萄的共同特征,舍弃其不同的特征。一般说来苹果、香蕉、葡萄具有汁液多、糖分多、并且还含有挥发性芳香物质、可以生食等特点。具备上述特点的一般都可以归类为水果。

712fd92b584286269d97f25a6ce53787.png图 11-2 水果的共同特征

抽象就是对同类事物的概括和归纳,前面例子的苹果、香蕉、葡萄是现实中的事物,人们在品尝的同时,抽取它们共有的特点,并起了一个新名称水果,来概括和归纳具有苹果、香蕉、葡萄共同特点的所有事物。例如:生梨、桃子也具备苹果、香蕉、葡萄的共同特点,因此生梨和桃子也可以归类为水果。

如果以面向对象的编程思想来看前面例子的话,水果可以称之为类,而苹果、香蕉、葡萄可以称之为类的实例或对象。类是抽象出来的事物,现实生活中并不存在,例如水果,水果是人们赋予具有苹果、香蕉、葡萄等共同特点的名称,不单指某一事物;对象是指具体的实物或概念,例如苹果、香蕉、葡萄等对象是实物,而一项政策可能就是一个概念性的对象了,在现实生活中,万事万物皆对象,面向对象编程就是模拟现实生活中的一个个对象来编程的。

现在生活中的许多对象都要进行分类,例如:人类、水果类、动物类、汽车类等。

分类的作用主要是为了便于管理和维护。面向对象的编程思想主要是通过模拟现实世界的各个对象来编程的,那么这些现实世界中的对象是怎样模拟或映射到计算机中的呢?这就要归功与面向对象编程思想的基本方法——抽象。

抽象并不是Java语言中所特有的概念,在其它面向对象的语言中,如C++在构建对象时也需要抽象建模。例如:在学生信息管理系统中,需要将学生的共同特征抽取出来,如学号、学分、性别等特征,构建学生模型。提炼学生共同特征的过程就是抽象建模。通过抽象,可以很容易地归纳出事物的共同特征和行为,以便与其它对象区别开来,这样抽取出来的特征和行为在面向对象的编程中叫做属性和方法。

属性是指对象具有的各种特征,学号、 学分、性别等特征就是学生对象的属性;行为一般用动词描述对象的各种操作。

每个对象的属性都有特定值,根据图11-2可知,学生甲乙和学生丙丁的学号、学分、性别都不一样。

a3e30738ad4aa0625516ac6e9908914b.png图 11-3 甲乙和丙丁学生的属性

■ 知识点拨

事物抽象的过程也是一个裁剪的过程,事物不同的、非本质性的特征被裁剪掉,留下共同特征。但共同特征也是相对的,例如,对于汽车和大米,从买卖的角度看都是商品,都有价格,是他们的共同的特征,但从其应用方面来看是不同的。所以在抽象时,同与不同,决定于从什么角度上来抽象,抽象的角度取决于分析问题的目的。

■ 思考与练习

家中都有电视机、冰箱、洗衣机等家用电器,请抽象出电视机、冰箱、洗衣机的共同特征,作为家用电器类的属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值