用代码描述这个世界--面向对象的编程思维

阅读更多

         面向对象是我学习java的第一课,当初学习的时候并不是很理解,但经过了两个多月的积累之后,觉得面向对象是决定这一门编程语言的使用范围,以及功能的基础。

         大家都知道,java,c++等都是面向对象的语言,而c,basic等语言都是面向过程的,那么他们之间到底有什么区别了?

        我们都知道,一个程序,是为了描述现实生活中的,一件事情,或是某个行为,将它编程程序,方便模仿,以及重复执行,例如:奥特曼打小怪兽、吃饭、洗衣服、我去商店买东西等等。那么上面的这些事情,哪些是面向对象,哪些是面向过程的呢?学过c语言的都知道,它能够实现一些所需要的功能,例如洗衣服,找出要洗的衣服,然后放在水盆中,在放水,放洗衣粉,然后再用手搓,用洗衣机洗等,那么如果我们要描述某某洗衣的时候要怎么弄呢,可能他的衣服不一样,选择洗的方式不一样等等。那么此时,面向对象的编程语言就能很轻松的解决这个问题。面向对象的语言中包含类和对象的概念,那么比如我们要描述,某某去商店买东西的这样一个事情,那么其中就有三个事物,人,商店,东西,那么我们就可以定义三个类,分别是 class Person,class Shop ,class Thing,其中每个类中都应该包含自己本身属性和方法,比如Person 类中,就应该包含一些基本的属性比如,性别,年龄,学历等等,一些方法比如:吃饭,运动,喝水等,我们没需要使用一个这样的对象,就只需要实例new一个就可以了。然后再通过面向过程的方法,将不同的对象,通过他们自身的方法属性,连接起来,这样就可以,描述整个事情的全貌。因此可以看出,面向对象是相对于面向过程而言的一种编程思想,是基于面向过程的。

       在java中最基本的单位就是类,我们要把现实世界中的事物(可以理解为一句话中的名词)转换为对应的类,把事物的一些属性,转变为类中的成员变量或是字段,把事物的一些功能,转换为类中的成员方法(函数)。类只是指具有相同属性的一类事物,必须进行实例化之后才有意义,比如说:人就是一个类,周杰伦就是一个具体的对象。

      面向对象的编程语言,可能一开始学不容理解清晰,或是彻底的用活,但越学越深的时候,你就会意识到它的重要性,一个类的它到底应该有哪些方法,和属性,那么就必须封装在这个类的里面,让语言更能够清晰的还原现实生活中的场景和事情,你的程序写越接近显示生活的规律,那么就越优秀,更利于后期的修改与维护。一门语言的用的范围便由它,最基本的编程思想来决定;一个程序的优秀与否,是由他能否最大程度的接近现实来决定。面向对象是一种,编程思维,也是java最基本的设计思路。

      

你可能感兴趣的:(用代码描述这个世界--面向对象的编程思维)