面向对象的三大特性

一、封装

含义

利用抽象数据类型将数据和基于数据的操作封装成一个独立实体。系统内的其他对象只能通过包裹在数据外面已经授权的操作和这个封装的对象进行交互。用户无需知道对象的细节,即可通过该对象对外提供的接口来访问该对象。

优点

  • 减少耦合
  • 类内部结构可自由修改(无需修改客户代码)
  • 对成员进行更精确的控制

二、继承

含义

以已存在的类的定义为基础建立新类的技术,新类的定义可以增加新的属性或功能,也可以使用父类的功能,但不能选择性的继承父类。

子类不能继承

父类private的属性和方法、父类构造器(JAVA中编译器会默认给子类调用父类的构造器)

protected关键字

类用户不可以访问。继承该类的子类或其他任何位于同一个包的类可以访问。

三、多态

含义

一个引用变量指向哪个类的实例对象,以及该引用变量发出的方法调用是哪个类的实现方法,在程序编译/运行期间才能决定。

Java实现多态的必要条件

  • 继承:必须存在有继承关系的父类和子类
  • 重写:子类对父类中某些方法进行重写,调用这些方法时就会调用子类的方法
  • 向上转型:将子类的应用赋给父类对象

多态又分为编译时多态运行时多态

编译时多态
编译期间决定目标方法,通过重载实现(方法名相同,参数不同)

运行时多态
运行期间决定目标方法,通过重写(同名同参)和继承实现,由JVM决定目标方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值