JAVA基础8——封装、继承

1、封装

程序设计要追求 高内聚,低耦合 。高内聚就是类的内部数据操作细节自己完成,不允许外
部干涉;低耦合:仅暴露少量的方法给外部使用
  • 使用private 修饰需要封装的成员变量。 (属性私有)
  • 提供一个公开的方法设置或者访问私有的属性(get/set)

封装的意义:

  • 1. 提高程序的安全性,保护数据。
  • 2. 隐藏代码的实现细节
  • 3. 统一用户的调用接口
  • 4. 提高系统的可维护性
  • 5. 便于调用者调用。
良好的封装,便于修改内部代码,提高可维护性。
良好的封装,可进行数据完整性检测,保证数据的有效性。
方法重载
public void test ( Strig str ){}
public void test ( int a ){}

2、继承

继承的本质是对某一批类的抽象(父类<<子类(派生类))
extends
(JAVA只有单继承没有多继承)
: java 中接口和接口之间 , 有可以继承 , 并且是多继承。
子类中继承了父类中的属性和方法 , 在子类中能不能直接使用这些属性和方法 , 是和这些属性和方法原有的修饰符(public protected default private) 相关的。
public
protect
default
private

在JAVA中所有类默认继承Object 类

super

以使用this来表示访问或调用子类中的属性或方法

使用 super 就表示访问 或调用父类中的属性和方法。

 私有属性和方法无法被继承

子类构造方法会默认调用父类的无参构造器

父类没有无参构造  

 

 

不管是显式还是隐式的父类的构造器 ,super 语句一定要出现在子类构造器中第一行代码。所以 this 和 super不可能同时使用它们调用构造器的功能 , 因为它们都要出现在第一行代码位置。
  • 1. super调用父类构造方法,必须是构造方法中的第一个语句。
  • 2. super只能出现在子类的方法或者构造方法中。
  • 3. super this 不能够同时调用构造方法。(因为this也是在构造方法的第一个语句)

方法重写:重写是方法的重写,不牵涉属性

(与方法重载不同)

 静态方法是类的方法,非静态方法是对象的方法

所以非静态方法:才能进行重写

 重写的语法
  • 1. 方法名必须相同
  • 2. 参数列表必须相同
  • 3. 访问控制修饰符可以被扩大,但是不能被缩小: public > protected > default > private
  • 4. 抛出异常类型的范围可以被缩小,但是不能被扩大 ClassNotFoundException ---> Exception
  • 5. 返回类型可以相同,也可以不同,如果不同的话,子类重写后的方法返回类型必须是父类方法返回类型的子类型
为什么要重写?
父类的功能:子类不一定需要,或者不一定满足。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

上兵伐眸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值