【Java】0X003 面向对象

时间:2023-03-09 08:48:11
【Java】0X003 面向对象

一。 什么是面向对象

都说Java是一门面向对象的语言,但什么对象?什么又是面向对象?以下都是我学到的知识和一点自己的理解。

对象是指包含属性和行为的主体。

比如,人有性别、血型、单眼皮或双眼皮等的特点,也有跑、跳、进食、呼喊、笑、怒等行为。这样,人就可以说是对象。

同时,对象也可以是不具有生命的事物,比如,伞有尺寸,颜色,用途(遮阳伞、雨伞)等属性,也包含撑开方式和收起方式的行为。这样,伞也可以是对象。

......

像这样的例子数不胜数,只要愿意,什么都可以是对象——这一点和java声称的一样,"一切都是对象。"

用我自己的理解,面向对象就是从对象的角度出发、进行描写事物或者记录状态。

  比如,假设记录一个野人的一天,那么Java描述就是

...
//野人的一天
Person savage = new Person();
savage.gender = "male"; //纯爷们野人
savage.hunting(“The ” +this.gender+" savage is hunting a deer..." );//野人正在狩猎打野
savage.laugh("aooo~aooo~~");//呲牙咧嘴的笑
...

  这样,就记录下了野人这愉快的一天(^O^)v.

二。面向对象的优势

但这样有什么用呢,先来看一个例子。

在不是面向对象的语言中,比如C,它是一门面向过程的语言。在描述一个事件时,面向过程的语言是这样:

吃("野人","猎物的肉");//在面向过程的语言世界里,函数"吃"是主体、"野人"是函数的参数。

  在描述同一个事件时,Java是这样:

野人.吃(“猎物的肉”);//在面向对象的语言中,对象“野人”是主体,吃是对象具有的行为。

  在上面的例子中,野人除了吃,还有打猎、采集等,这些都是从属于野人这个对象里的行为,这样一个对象就能同时拥有多个行为,这描述与现实几乎一致。

  这样看起来,面向对象与现实时间的描述非常贴近,更利于理解和使用。

三。 总结

  Java是面向对象的语言,Java大法好!!!!!!