黑马程序员————浅谈面向对象

来源:互联网 发布:mac电脑如何卸载sdk 编辑:程序博客网 时间:2024/05/21 06:42

------- android培训java培训、期待与您交流! ----------


Java是一种纯粹面向对象的程序设计语言。

乍一看这句话很抽象,什么是面向对象呢?通过老师的讲解和自己的理解,本文综合的讲解下什么是面向对象以及面向对象有什么特征。

         面向对象是相对于面向过程而言的,面向过程和面向对象都是一种思想。

         面向过程强调的是每一个功能的步骤;而面向对象强调的是对象,然后由对象去调用功能。

         例如,我要买电脑。

         面向过程的做法就是,我先了解电脑-->配合我自己的需求-->找对应的参数信息-->去卖电脑的地方-->听导购介绍-->讨价还价-->电脑抱回家。

         面向对象的做法就是,我要买电脑-->我认识一个懂电脑又会讨价还价的朋友,交给他-->朋友帮我把电脑抱回家。

         再例如,我要洗衣服。

         面向过程的做法就是,把衣服脱下来-->拿个盆子-->加入水-->放点洗衣粉-->把衣服放进去-->揉一揉搓一搓-->再清洗衣服-->拧干-->晾起来。

         面向对象的做法就是,把衣服脱下来-->打开全自动洗衣机-->把衣服扔进去-->一键启动-->晾起来。

         通过上面的例子可以知道面向对象就是将一些功能封装到对象里面,我们用这个对象去调用需要的功能。比如上面两个例子中的“我的朋友”和“洗衣机”就是对象,而“我的朋友”封装了“懂电脑”,“会讨价还价”等功能,“洗衣机”封装了“会洗衣服”等功能。如果你连把衣服扔进洗衣机都嫌麻烦的话,可以将洗衣服这个整体的流程封装成一个对象,比如女朋友,到时候要洗衣服直接对女朋友说一声“我要洗衣服”,就可以了。

         由上可见,面向对象的思想更符合我们的思想习惯,可以将复杂的事情简单化,将我们从执行者变成了指挥者。

         我们怎样才能在java语言中利用面向对象思想呢?

         那么我们就不得来说一说对象了。

         其实对象在我们的生活中是普遍存在的,如果是一位有经历的程序员,可以毫不夸张的说是是万物皆为对象。比如上面两个例子中的“我的朋友”和“洗衣机”;

         我们学习编程语言就是为了模拟现实世界的事物。现实世界是怎么描述事物的呢?

         比如手机,它有颜色,内存,大小等属性,又有打电话,发短信,玩游戏等功能。

         比如学生,有姓名,年龄,性别等属性,又有吃饭,睡觉,学习等功能。

         可见一般描述事物主要是由两个方面,一个是属性,即该事物的基本信息,另一种是功能,即该事物能够做什么。

         而java语言最基本的单位是:类。

         既然java语言是和现实中的事物相对应的,我们就得到了现实世界事物和类的对应关系:对事物的描述就对应了java中class定义的类。

         事物的属性就对应了类中的成员变量;事物的功能就对应了类中的成员方法。

         而对象就是这类事物中实实在在存在的个体。

         综上我们可以知道:

         类:就是一组相关的属性和行为的集合,是一个抽象的概念。

         对象:就是该类的具体表现形式,具体存在的个体。

         例如,学生是一个类,班长就是这个类中一个实实在在的个体,班长就是一个对象。手机是一个类,具体到我用的手机,就是一个对象。

         综上可知,我们在java中利用面向对象思想其实就是一个找对象的过程。没有对象就创建对象,再使用对象,只会对象做事情。就如懒得懒得洗衣服就买个洗衣机找个女朋友的道理一样。

         Java的开发就是找对象,创建对象,调用对象的功能。

         面向对象设计其实就是管理和维护对象之间的关系。

         下面就通过一个例子说明java中是怎样创建对象,和调用对象的功能的。

         例如 老师就是一个类,具有姓名,性别,年龄等属性,有吃饭,睡觉,讲课等行为(功能)。下面就创建一个老师类。

         classTeacher{

                   Stringname;//姓名属性

                   Stringsex;//性别属性

                   Intage;//年龄属性

                   //吃饭行为

                   voideat(){

                   System.out.println(“eat”);

                   }

                   //睡觉行为

                   voidsleep(){

                   System.out.println(“sleep”);

                   }

                   //讲课功能

                   voidprelect(){

                   System.out.println(“prelect”);

                   }

         }

         创建了类以后,我们可以创建这个类的具体对象:Teacher T = new Teacher();

         然后可以调用这个对象的讲课功能:T.prelect();

 

关于面向对象的特征将会在下面的文章中提到。

0 0