最近,笔者初步接触了java中“面向对象”的概念,在此做一下简单的分享。
简单的介绍:
一开始的编程软件如c语言,是属于“面向过程”的编程软件。当事件比较简单,可以利用线性的思维解决的时候,“面向过程”的语言和“面向对象”的语言都可以解决这些问题。但如果需要用到的方法很多,要写出的软件十分复杂,那么调用方法会很不方便,而且代码也不容易维护,其他人不容易协助。后来有人想到,把有相关性的方法与变量放在一起,包在一块。这产生了一个新的概念——类。对象是具体的事物,而类则是对对象的抽象化。“面向对象”的软件以类为单位组织代码,如果代码长软件复杂,那么这一种软件的优势比较大。
简单的例子:
以造房子为例。
面向过程:造门→造房梁→造屋顶→铺上瓦片→…………→房子造好
面向对象:门:门锁,门把手,油漆,猫眼
屋顶:瓦片,…………
…………
组装各个部件,房子造好。
面向过程是一个一个的解决问题,而面向对象则是现有具体的对象,然后抽出各个对象之间象的部分,归纳出类,在通过类来认识其他的对象。
简单的代码举例:
笔者在此举一个例子。
下面的代码中,s1为一个“student”对象,以上面为模板 s1:name; id; age; weight; gender; study; sayhello(sname); 而s2则是一个新的对象。
以上如有表达不当之处,还请指出更正。
2017-8-13 晚