【Java SE】Day10接口、多态

一、接口

1、概述

  • 是一种引用类型,是方法的集合,内部封装了各种方法
  • 引用类型:数组、类、接口、包装类

2、方法的定义格式

  • 抽象方法:无方法体,子类实现
  • 默认方法:
  • 静态方法:static修饰,可以由接口直接调用
  • 私有(静态)方法:供接口中的默认方法和静态方法调用

3、各类方法的使用

  • 类实现接口,实现类/接口的子类
  • 抽象方法必须重写Override
  • 默认方法可以直接调用,也可重写
  • 私有方法:只能由接口中的默认方法调用

4、其他特点

  • 单继承,多实现
  • 重名的默认方法和抽象方法,必须重写一次
  • 接口可以多继承extends
  • 不可定义变量,只能定义常量
  • 没有构造和静态代码块

二、多态

1、概述

  • 同一行为的不同表现形式
  • 前提:继承/实现
  • 格式体现:父类引用指向子类对象(父类=new子类)

2、好处

  • 父类类型作为方法形式参数,传递子类对象给方法,进行方法的调用
  • 使程序简单,具有良好扩展性

3、引用类型转换

  • 向上转型:默认,父类引用指向子类对象时
  • 向下转型:强制类型转换
  • 为什么转型:需要调用子类特有的方法时
  • 转型的异常:ClassCastException 
    • 给引用变量做类型校验:if(a instanceof Cat)

三、综合案例

USB接口、笔记本类、鼠标类、键盘类实现各自功能

posted @ 2021-05-26 11:44  哥们要飞  阅读(36)  评论(0编辑  收藏  举报