面向对象高级,学习记录

day01-面向对象高级

今日内容

  • 继承
  • 修饰符
    • 权限修饰符
    • final
    • static

今日目标

  • 能够知道继承的好处和弊端
  • 能够知道继承中成员的访问特点
  • 能够知道方法重写及应用
  • 能够完成继承案例
  • 能够知道权限修饰符访问特点
  • 能够知道final关键字修饰内容的特点
  • 能够知道static关键字修饰内容的特点

1.前言

1.1 面向对象基础回顾

在面向对象基础部分,我们学习了:

  • 类的定义
  • 对象的使用
  • private关键字
  • this关键字
  • 封装
  • 构造方法
  • JavaBean

1.2 面向对象高级课程安排

  • day01
    • 继承
    • 修饰符
  • day02
    • 多态
    • 抽象类
    • 接口
  • day03
    • 内部类
    • lambda表达式

2.继承

2.1 继承概述

继承
  • 让类与类之间产生关系(子父类关系)
    • 子类可以直接使用父类中非私有成员
    • 子类中可以定义自己特有的成员
格式
  • Fu称之为父类,也被称为基类、超类
  • Zi称之为子类,也被成为派生类
public class 子类名 extends 父类名{
   
    
}
// 示例
public class Zi extends Fu {
   

}
代码【练习】
  • 练习继承的格式
  • 理解:
    • 子类可以直接使用父类中非私有成员
    • 子类中可以定义自己特有的成员
public class Fu {
   
    public void show() {
   
        System.out.println("show方法被调用");
    }
}
public class Zi extends Fu {
   
    public void method() {
   
        System.out.println("method方法被调用");
    }
}
/*
    测试类
 */
public class Demo {
   
    public static void main(String[] args) {
   
        //创建对象,调用方法
        Fu f = new Fu();
        f.show();

        Zi z = new Zi();
        z.method();
        z.show();
    }
}

2.2 继承的好处和弊端

好处
  • 提高代码的复用性:多个子类中公共的内容抽取到父类中,子类可以直接使用

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UeGSqZSZ-1661925873441)(assets/01-公共内容抽取父类.png)]

  • 提高代码的维护性:父类中添加非私有的成员,子类自动就可以使用了
弊端
  • 提高代码耦合性:父类中删除一个成员,子类中使用过这些成员的代码就会报错
使用场景
  • 发现多个类中,有相同的内容,并且存在 is a 关系(学生是人的一种).可以考虑使用继承(将公共的内容抽取到父类中)
  • 示例
    • 猫,狗… 是动物的一种
    • 苹果,香蕉… 是水果的一种
    • 学生,老师… 是人的一种

2.3 继承中成员变量访问特点

就近原则
  • 子类局部范围找
  • 子类成员范围找
  • 父类成员范围找
  • 如果都没有就报错
代码【练习】
  • 理解就近原则
public class Fu {
   
    //年龄
    public int age = 40;
}
public class Zi extends Fu {
   
    //身高
    public int height = 175;

    //年龄
    public int age = 20;

    public void show() {
   
        int age = 30;
        System.out.println(age);
        System.out.println(height);
        //报错
//        System.out.println(weight);
    }
}
/*
    测试类
 */
public class Demo {
   
    public static void
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值