上回说到,JAVA是一门非常纯粹的面向对象的语言,所以笔者先带大家了解一下面向对象,从而对JAVA有更进一步的认识。
背景:
早期编程语言如C,都是结构化编程语言,随着软件开发技术发展,人们开始提高代码的可重用性,可扩展性、可维护性,即面向对象的思想,这种思想及程序的发展便催生出了大量的面向对象的语言,如Java、C#....
同时,这样的发展,允许了人们可以把人类最自然的思维方式融入到系统编程之中,使编程变得更加容易,让我们更自然的去分析(OOA)、设计(OOD)以及实现(OOP)。
先举个栗子:
若想实现小红吃苹果
结构化程序设计的最小单元是函数:
吃(小红,苹果);
面向对象设计的最小单元是类:
小红.吃(苹果);
在这种相比之下,就可看出面向对象的思想更好理解。更接近现实自然人类的思维方式。并且在面向对象的世界里,一切皆对象,并且可以把具有共同特征的对象进行抽象封装,然后个性的对象可以继承抽象类,从而提高代码的可重用性。如:
实现小猫喵喵叫
结构化程序:
小猫.喵喵叫();
面向对象:
小猫.叫("喵喵");
这时不大能看出区别,但如果我们之后再添加小狗汪汪叫,小羊咩咩叫时。结构化需要继续实现另两个(狗叫,羊叫)方法。而对于面向对象,就可以对动物进行封装,因为动物都有叫的方法,及只在父类写叫的实现方法,具体的小动物去继承,这样就减少了很大的代码量。通过这个例子,也体现了面向对象的第三个特点:多态。动物都有叫的方法,但每个小动物的叫声又都不同。
我们进行面向对象分析和设计时,有一个很得力的工具:UML,关于UML之前做过部分总结,在此供大家参考.......(UML基础理解、UML中的那些关系)
总结:
面向对象具有三大特征:封装、继承、多态。面向对象使得程序具有更高的可重用、可扩展、可维护性。使得人们能够用最接近自然思维的方式编程......
下篇预告:
通过两篇博客,我们大致了解了JAVA的一个发展过程和编程思想,下篇我们将介绍一下Java的运行机制,并对Java环境进行配置,进入开发准备阶段。