Java学习感言:万事万物皆是对象
程序是一个工具,它和一个锯子,在本质是是没有任何区别的,是人为了满足自己一些需求设计出来的,
让大师去完成一个物品的雕刻,他可以把任何东西当作的工具,对他来说锯子,钳子无所谓,都可以完成,
但是不是所有人都是大师,普通人无法实现无法用简陋的工具完成雕刻,但是普通人可以通过数字机床进行
雕刻,最终大师和普通人都可以完成雕刻。
在社会中普通人和科学家的比例是很微小的,科学家是远远少于普通人,但是科学家的精力有限不可以
满足整个人类的需求,所以大部分工作要普通人来做,普通人又没用那么专业的知识,所有科学家为普通人
设计了一个机床,普通人不需要知道机床的材料,底城物理结构,他只要知道怎么用就可以完成雕刻,这个
工具就是我们的机器语言。
但是机器语言还是对于普通人来说太难了,所以有了汇编语言,但是汇编语言还是太难了,所以有了高
级语言,早期的C语言和其他语言。
C语言人可以理解了但是由于人的区别,不同的人对于一个事物的看法不同解决方法就有所差异,就像雕
刻每个人手工雕刻出来的工艺品肯定是不同的,这就导致程序代码的通用性很差,开发新代码周期很长,面对
新需求都要重头开始写,不满足人们日益增长的需求。
为了解决人们日益增长的需求,面向对象的概念的出现了,如何解读面向对象概念,就是科学家为满足雕
刻这个需求所以造了一台数字雕刻机,编程人员不需要了解代码具体实现的细节,但是还是可以完成新的需求
的解决,这个造机床的过程是封装,这个需求就是对象。
问题又来了,我造了一台机床难道只能雕刻一种类型的工艺品吗?这样的话,这个工艺品的售价肯定很
贵,成本摆在那里,这肯定是不符合社会的需求的,所以我们要解决这个问题,我们把机床里面的结构模块化
,但是一个模块一个模块怎么连接了,不同厂家的生产的模块怎么连在一起呢?用相同的接口就可以解决,
这里就是面向接口概念,接口有不同的接口,你这家厂商生产USB,我这家生疮STAT接口,这肯定不能完成模
块的连接,所有为了解决这个问题,协会产生了,协会规定这个模块只能用这个接口,那个模块只能用另外
一个接口,这样问题解决了,这个规定就是协议。
所有的机床问题解决了,我们可以更换图纸,更换机床的雕刻工具模块,然后同一台工具就可以实现不
同工艺品的雕刻,机床核心部件称为母机(核心机)我们可以根据我们的需求增加或者更换不同的模块形成
新的子机器,这是继承,继承了核心机的核心功能,然后添加了新的功能。
我们可以添加不同的模块形成新的子机器,这就是多态。
这就是JAVA三大特性,封装,继承,多态。
然后我们通递归的思想,我们要完成一个工艺品必须要机器,机器必需要不同的模块,模块需要集成元
件,继承元件要半导体,半导体需要自然界一些元素的聚合体,聚合体必须要元素,元素要粒子,现在人对量
子领域的研究还是比较粗浅。这样我们把解决工艺品的需求就要解决最小的粒子问题,解决了粒子问题我们就
能慢满的解决工艺品需求,这个就是递归和迭代,我们把解决工艺品的方式来解决迭代解决我们的问题。
这样,万事万物就是对象。
现在有很多种计算机语言,语言和语言没有比较的必要的,语言只是工具,重要的是思想!所以在学习
的过程中,首先学习基本的语句,然后要在宏观角度去学习程序设计的思想。
|
|