博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java面向对象的三大特征
阅读量:4612 次
发布时间:2019-06-09

本文共 756 字,大约阅读时间需要 2 分钟。

面向对象三大特征:
封装性
继承性
多态性
1. 封装性
 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的属性和方法只给特定的对象或其他类进行访问,即使用不同的访问统治权限使类被不同的对象访问,类中的方法属性也可单独使用访问控制权限进行修饰。
 简而言之就是,使类对外部保持整洁,只留有主要的接口进行类业务逻辑的使用。
 没有进行封装的类,如下所示:

进行了封装的类:

2. 继承性
 继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。
 继承的主要作用在于:在已有功能基础上进行功能的扩充,对类进行扩充,代码的复用。
 
3. 多态性
 所谓多态就是指一个类实例的相同方法在不同情形有不同表现形式。多态机制使具有不同内部结构的对象可以共享相同的外部接口。(利用多态可以得到良好的设计)
 多态表现为以下两点:
方法的多态
 方法的重载:
 同一个方法名可以根据参数数量和类型的不同重载为不同的方法。
 方法的覆写:
同一个父类的方法,不同的子类实例化,其方法的实现也可能不同。
对象的多态
 对象的多态主要体现在抽象类和接口,可分为向上转型和向下转型。
 向上转型:
 
  SuperObj superName = new ChildObj();1
 发生向上转型一般是为了参数的统一。
 向下转型:
 
  ChildObj childName = new SuperObj();1
 发生向下转型一般是为了得到子类扩充的方法。
 而向上转型和向下转型的本质其实就是方法的覆写。如果子类没有对父类进行方法的覆写,也就不存在对象的多态。

转载于:https://www.cnblogs.com/wjs15078442691/p/10969715.html

你可能感兴趣的文章
IP报文格式及各字段意义
查看>>
(转载)rabbitmq与springboot的安装与集成
查看>>
C2. Power Transmission (Hard Edition)(线段相交)
查看>>
STM32F0使用LL库实现SHT70通讯
查看>>
Atitit. Xss 漏洞的原理and应用xss木马
查看>>
MySQL源码 数据结构array
查看>>
(文件过多时)删除目录下全部文件
查看>>
T-SQL函数总结
查看>>
python 序列:列表
查看>>
web移动端
查看>>
pythonchallenge闯关 第13题
查看>>
个人介绍
查看>>
使用python动态特性时,让pycharm自动补全
查看>>
MySQL数据库免安装版配置
查看>>
你必知必会的SQL面试题
查看>>
html5 Canvas绘制时钟以及绘制运动的圆
查看>>
云推送注意(MSDN链接)
查看>>
OpenMobile's Application Compatibility Layer (ACL)
查看>>
竞价广告系统-广告检索
查看>>
Metro Style app :浏览器扩展
查看>>