1.1 抽象的进步
抽象这个词呢,我最早是在高中物理里面听过的,那时候学力学的时候,老师总告诉我们,要有抽象思想,学会从宏观的角度看世界,其实,说白了,就是不存在的东西,只存在人们脑海深处的一种印象,对于编程来说,就是把这种印象具象化,让它变成我们能看到的,触摸到的实体。
在java里面的抽象就是指对象,也就是我们常说的面向对象编程,在java编程思想中归纳出了5大特征,我会用自己的话解释一下,
(1) 所有东西都是对象;
简单点就是说,我们现实生活中所有的一切都可以用代码中的对象一一对映,这是我们写代码的基础,不然机器是没办法控制现实的。
(2) 程序是一大堆对象的组合;
所谓程序,其实就是生活中的一些事物的网络化体现,程序存在的意义是为了更好的生活,那这样就很好理解了,生活中比如说吃饭,你得拿碗,拿筷子,装食物,坐下,吃饭,这一系列的过程在网络世界里就是程序。
(3) 每个对象都有自己的存储空间,可容纳其他对象。
再举个例子吧,假如你要去口渴了,那你肯定需要一个杯子,杯子里面可以装水,装啤酒,装橙汁,杯子是个对象,水,啤酒,橙汁也是对象,杯子对象里面可以装其他对象,但是杯子的体积是有限的,这就是存储空间,超过了就溢出,程序里也是如此
(4) 每个对象都有一种类型。
还是以上面的例子,水,啤酒,橙汁都是不同的类型
(5) 同一类所有对象都能接收相同的消息。
还是以上面的例子,水,啤酒,橙汁都是不同的类型,细分的话都属于饮料,所以,水可以喝,啤酒可以喝,橙汁也能喝