抽象类,接口,多态,final(七)

抽象类

abstract
抽象出共有的行为作为抽象方法
eg:(动物 吃—>狗 吃骨头)
引例:
在这里插入图片描述

  • 抽象类和抽象方法格式
    在这里插入图片描述
  • 注意事项
    在这里插入图片描述

接口

一种公共的规范标准
功能的定义,用于设计阶段

  • 定义格式
    在这里插入图片描述
    接口中可以有抽象方法,必须public abstract定义
    在这里插入图片描述
  • 接口使用步骤
    需要实现类来具体实现接口中规范的功能方法

如果含有抽象类的接口的实现类没有覆盖重写接口中的所有抽象方法,那么这个实现类就必须是抽象类

  • 默认方法—用于接口升级
    在这里插入图片描述
    在这里插入图片描述
  • 静态方法
    不允许接口的实现类对象使用
    在这里插入图片描述
    注意事项
    在这里插入图片描述
  • 私有方法
    Java9及以后才有
    解决两个方法重复代码太多问题
    在这里插入图片描述
  • 成员变量:(常量)
    通过接口名称.变量名—去使用
    public static final 数据类型 常量名称
    修饰符可省略,必须进行赋值,命名使用大写字母下划线区分单词

*接口小结:
在这里插入图片描述

  • 注意事项
    在这里插入图片描述
  • 接口之间的多继承
    interface interFace extend interFaceA,interFaceB
    在这里插入图片描述

多态

父类引用指向子类对象 or
接口引用指向子类对象
一个对象拥有多种形态,这就是对象的多态性
eg:小明是一个学生,小明也是人—人是学生的父类

  • 多态的格式:
    eg:Fu fu=new Zi();
    在这里插入图片描述
  • 成员变量使用特点:根据左边的引用类型来优先使用,没有则向上找
    在这里插入图片描述
  • 成员方法使用特点:根据new的来优先使用,没有则向父类找
    在这里插入图片描述
  • 总结:
  1. 成员变量:编译看左边,运行看左边–没有则向上找–>
    直接访问时不会使用到子类变量值
    方法访问变量时看方法属于谁
  2. 成员方法:编译看左边,运行看右边–没有则向上找
  • 多态的好处:
    在这里插入图片描述
  • 对象的向上转型:
  • 对象一旦向上转型为父类,那么就无法调用子类特有的内容----->使用对象的向下转型还原回去
    eg:动物是父类,猫是子类,猫是动物就是向上转型,动物–>猫就是向下转型
    在这里插入图片描述
  • 对象的向下转型:
    在这里插入图片描述
    在这里插入图片描述
  • 安全向下转型判断:
  • 对象 instanceof 类名----boolean值判断对象能否作为后边类型的实例
    在这里插入图片描述
  • final关键字:
    在这里插入图片描述
  1. 修饰一个类:
    在这里插入图片描述
    2.修饰成员方法:
    在这里插入图片描述
    3修饰局部变量:
    方法的参数也时局部变量
    在这里插入图片描述
    eg:
    在这里插入图片描述
    4.修饰成员变量:只能直接赋值or构造赋值
    在这里插入图片描述
    eg:构造方法赋值
/*final关键字修饰成员变量--必须直接赋值和构造赋值二选一
* 且值不能变*/
public class Final {
    //手动赋值
    final private int age=15;
    final private String name;
    //构造方法赋值
    public Final() {
        name="不可变";
       // age=16;值不可变
    }

    public Final(String name) {
        this.name = name;
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值