0x003 万物皆对象

0x000 概论


学java就逃不了谈面相对象,但是面相对象又是一个高深的哲学问题,一章两章是难以详述出来的。为什么说他是一个哲学问题呢,因为面相对象并不是编程中产生的,而是一种本来就存在的思想,只是被用在了编程之上,从而形成了面相对象编程,所以在这里只能浅薄的谈谈如何运用面相对象编程。

如果真的要说面相对象是什么的话,我更愿意称之为一种思想观,一种看待世界万物的角度,而面相对象编程,只能说是面相对象思想观在软件工程中的一种最佳实践,是一个方法论。

说实在,在学习面相对象编程的过程中,学习到最多的不是如何做出一个软件,而是如何运用面相对象的思维去解决更多超越编程的实际问题,比如如何用面相对象的思维去管理一个团队,管理一个项目,或者制作一个ppt、视频。

在使用面相对象编程实践的时候,我也发现面相对象编程不仅仅只是我们常说的多态、封装和继承这三个简单的特性,只能说这类似江湖中武功心法的六字真言,而其中的内涵却是浩瀚无比。

0x001 什么是面相对象编程


佛说:一花一世界,一叶一乾坤。如果我说这是面相对象的最佳范例你信不信?

这个世界是由碳组成的,众多的碳构成了众多的化学元素,众多的化学元素构成了众多的生物细胞,众多的生物细胞构成了众多的生物结构,而众多的生物结构构成了众多的生物类型,所以一朵花中有多少种结构、细胞
、化学元素呢?对我们而言,宇宙是广袤的,甚至地球就可以说是我们的世界,那如果把我们比作花中的一个细胞呢?那花不就是我们的世界?

我们学习java之前,通常可能学过其他的语言,一般是C,我就是先学C才学了JAVA,对于C面相过程的思维是浅显易懂的,这种思维就像在完成一个连线工作,但是面相对象是完全不同的,它像一个拼图,我们把一个拼图块随意放置(当然是在正确位置),当我们将所有的拼图块放置好,它俨然已成为一幅画(一个系统),没有像面相过程一般有一条清晰的故事主线,它靠的是拼图块之间的关系。

在人类研究这个世界的过程中,我们学会了抽象,什么是抽象呢,我的理解是将一个真实存在的物体抽象成不存在但是拥有该物体特性的东西,比如男人、女人,我们可以抽象出人类,特性是可以直立行走。那花男人女人是什么呢?他是对象。而抽象出来的人类是什么呢,是类。
所以可以得出一个结论:类是抽象的,对象是抽象的一个实例,是“真实”存在的。

类是具有相同特性和行为的对象的集合,比如男人、女人都是人类
/**
* 定义人类类
**/
class Human{
}
Human man=new Human();//新建一个男人对象
Human women=new Human();//新建一个女人对象

对象

每个对象都是唯一的,比如每个人都有自己的姓名。

    /**
    * 定义人类类,并且定义他们的特性
    **/
    class Human{
         int age;
         String name;
         public Human(int age,String name){
              this.age=age;
              this.name=name
         }
   }
    Human man=new Human(24,"John");//新建一个男人对象并且赋予她的特性
    Human women=new Human(27,"Jane");//新建一个女人对象并且赋予她的特性

一个类中一共包含两个元素

  • 属性
  • 方法/行为

那这两个元素在对象中扮演什么角色呢?我们还是用一个人来举例
人自身拥有的特性:姓名,年龄,性别
人可以做什么:讲话,睡觉,吃饭
/**
* 定义人类类,并且定义他们的特性和行为
**/
class Human{
int age;
String name;
String sex;
public Human(int age,String name,String sex){
this.age=age;
this.name=name
this.sex=sex;
}
void speak(){}
void sleep(){}
void eat(){}
}
那类中的构造函数对于人来说以为着什么呢?可以说是人类在出生的时候自带或者外部赋予它的属性,例如出生日期,姓名等等,有些属性是随着他的成长是会变化的,例如年龄,而有些事固定不变得,例如出生日期。

面相对象的三个特性
  • 封装
  • 继承
  • 多态

先说封装
如果将世间万物都看作对象,那么手机也可以看做一个对象,它由众多个零件对象组成,对于普通用户,我们并不知道手机是如何实现的,但是我们却知道如何使用它。也就是说,手机将实现的细节隐藏掉了,对我们来说,手机就是一个黑盒,只剩下输入输出的接口暴露给我们,这便称为封装。

持续更新

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,179评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,229评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,032评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,533评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,531评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,539评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,916评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,813评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,568评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,654评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,354评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,937评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,918评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,152评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,852评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,378评论 2 342

推荐阅读更多精彩内容