面向对象编程(OOP)Java是一个支持并发、基于类和面向对象的计算机编程语言
下面列出了面向对象软件开发的优点:代码开发模块化,更易维护和修改
增强代码的可靠性和灵活性
增加代码的可理解性
面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象
下面的章节我们会逐个分析这些特性
封装封装给对象提供了隐藏内部特性和行为的能力
对象提供一些能被其他对象访问的方法来改变它内部的数据
在Java当中,有3种修饰符:public,private和protected
每一种修饰符给其他的位于同一个包或者不同包下面对象赋予了不同的访问权限
下面列出了使用封装的一些好处:通过隐藏对象的属性来保护对象内部的状态
提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展
禁止对象之间的不良交互提高模块化
参考这个文档获取更多关于封装的细节和示例
多态多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力
一个多态类型上的操作可以应用到其他类型的值上面
继承继承给对象提供了从基类获取字段和方法的能力
继承提供了代码的重用行,也可以在不修改类的情况下给现存的类添加新特性
抽象抽象是把想法从具体的实例中分离出来的步骤,因此,要根据他们的功能而不是实现细节来创建类
Java支持创建只暴漏接口而不包含方法实现的抽象的类
这种抽象技术的主要目的是把类的行为和实现细节分离开
抽象和封装的不同点抽象和封装是互补的概念
一方面,抽象关注对象的行为
另一方面,封装关注对象行为的细节
一般是通过隐藏对象内部状态信息做到封装,因此,封装可以看成是用来提供抽象的一种策略
常见的Java问题1
什么是Java虚拟机
为什么Java被称作是“平台无关的编程语言”
Java虚拟机是一个可以执行Java字节码的虚拟机进程
Java源文件被编译成能被Java虚拟机执行的字节码文件