1. 面向对象和面向过程的区别
面向对象 | 面向过程 | |
---|---|---|
特性 | 封装、继承、多态 | 功能模块化,代码流程化 |
优点 | 易于维护、复用和拓展;低耦合 | 性能高 |
-
面向对象:认为世界由对象组成,对象与对象之间通过方法进行交互。以对像为中心,按功能划分问题。
优点:①结构清晰;②重用性高,易拓展、易维护
缺点:①性能较低(因为类的调用需要实例化,开销较大) -
面向过程:以事件(过程)为中心,将事件分解为一系列步骤,按顺序调用函数实现步骤。
优点:①编程流程化,任务明确;②效率性能高
缺点:①不适于处理复杂问题;②代码重用性低、拓展能力差,不便于维护
2. 面向对象的三大特性
-
封装:把数据和操作数据的方法封装起来,对数据的访问只能通过已定义的接口。现实世界被描述成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
-
继承:子类可以继承父类的方法和实例变量,并根据自身的需要进行新增或修改。这体现了现实世界中一般与特殊的关系。
-
多态:多态是同一个行为具有多个不同表现形式(如George在学校是学校,在家里是儿子)。就是同一个接口,使用不同的实例而执行不同操作。具体体现在父类引用变量可以指向子类对象,如Parent p = new Child();
多态分为编译时多态(方法重载)和运行时多态(方法重写/覆盖)。
多态存在的条件:继承、重写、父类的引用指向子类对象
3.JDK、JRE、JVM的关系
JDK(Java Development Kit),Java开发工具包
JRE(Java Runtime Environment),Java运行时环境
JVM(Java Virtual Machine),Java虚拟机
Java开发工具包 包括 Java运行时环境,Java运行时环境 包括 Java虚拟机。
标签:Java,对象,子类,基础,多态,面向对象,封装 来源: https://www.cnblogs.com/georgehu99/p/15978635.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。