当前位置:网站首页>2022-07-21 第六小组 瞒春 学习笔记

2022-07-21 第六小组 瞒春 学习笔记

2022-08-02 14:21:00 烫嘴的辛拉面

学习目标:

  • 掌握面向对象的特征继承
  • 掌握super与重写的用法
  • 加强this用法

 

学习内容:

  1. 面向对象特征:继承 
  2. super
  3. 重写

继承的优点:

A:优点

提高了代码的复用性

提高了代码的可维护性

B:缺点:

类的耦合性增强了

开发的原则:高内聚低耦合

类与类之间的关系:

  1. 属性关系
  2. 参数关系
  3. 继承关系

例如:

生物 动物 人 猫

直接继承: 人——>动物 猫——>动物

 间接继承:人——>生物

extends 继承

Persib Cat Animmal可以叫做Biology类的子类

Animal叫做Biology类的直接子类

继承的写法

直接父类:写在extends关键字后面的类

在Java中的继承是单继承,一个子类只能有一个直接父类,但是可以有多个间接父类

extends后面只能写一个类

继承的作用:  

访问权限修饰符 protected受保护的  不同包的子类可以访问

继承父类的属性,方法 创建子类对象时,要父类先被实例化,再子类

当一个类被实例化时,一定会实例化它的直接和间接父类。

子类的构造器可以有多个,但是必须和父类的构造器形式上统一

super关键字:代表调用父类的结构

super调用父类的方法  this调用当前类的方法

this和super区别

当使用super调用父类的构造器时,super(age)必须是第一句话

在当前类中使用this调用本类的构造器,this(name)必须是第一句话

所以构造器中只能选择一个

super指向的父类,不代表任何对象

this指向的本类,代表当前类的对象,方法的调用者

 方法的重写 override

子类可以重写父类的方法

public String show(){

return super.show()+"话"

}

方法的重写,我们可利用到父类中已经运算过的结果,方法的重写体现的就是继承的核心,就是为了扩展父类的功能

方法重写的规则前提:继承与被继承的关系

 1.访问权限   :重写的方法的权限不能低于被重写的方法,开发中一般都是等于

2.返回值类型 :必须重写的方法的返回值可以被重写的方法不同,但是必须是被重写方 法的子类,开发中一般一样

3.方法名 :必须相同

4.参数列表:必须相同

开发中如果要重写,基本一模一样,只变方法体

public Ch01 info(String name,Integer age){

Ch01 ch01=new Ch01;

ch01.setName(name);

ch01.setAge(age);

return ch01;

}

优化

public Ch01 info(String name,Integer age){

this.setName(name);

this.setAge(age);

return this;      this谁调用它就代表谁 super代表不了对象,this能代表对象

super代表属性代表方法

public statiic void main(String[] args){

Ch01 ch01=new Ch01;

ch01=ch01.info("acc",20);

sop(ch01.getName()+ch01.getAge());

调用对象  代表本类对象(调用者)

setName是没有返回值的

void改为当前类的对象  如Person

return this;

属性就可以Person.setName().setAge();

链式处理

setName是没有返回值的

void改为当前类的对象  如Person

return this;

属性就可以Person.setName().setAge();

链式处理

练习:

*  有一个银行卡类,有账号和密码,余额,有存款和取款的方法。
*  创建一个借记卡类,继承于银行卡,转账额度。
*      存款和取款的方法,取款的时候,
*      如果超过了20000,则提示需要去柜台拿身份证办理!!!
*      创建一个信用卡类,继承于银行卡,信用额度。
*      有存款和取款的方法。
*      取款:如果余额大于0,则从余额中扣,
*      如果余额小于等于0,则会走信用额度。
*      余额:100,信用额度:50000,要取钱数:1000
*
 最终在Demo类中测试相关功能



学习时间:

  • 上午:7:30-12:00
  • 下午:1:30-5:00
  • 晚上:6:00-10:00

学习产出:

  • 熟悉了面向对象继承的特征
  • 对于this的用法有了拓展
  • 明白了重写的用法
原网站

版权声明
本文为[烫嘴的辛拉面]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_49405762/article/details/125918147