【Java SE】Day10接口、多态
2024-09-08 17:42:12
一、接口
1、概述
- 是一种引用类型,是方法的集合,内部封装了各种方法
- 引用类型:数组、类、接口、包装类
2、方法的定义格式
- 抽象方法:无方法体,子类实现
- 默认方法:
- 静态方法:static修饰,可以由接口直接调用
- 私有(静态)方法:供接口中的默认方法和静态方法调用
3、各类方法的使用
- 类实现接口,实现类/接口的子类
- 抽象方法必须重写Override
- 默认方法可以直接调用,也可重写
- 私有方法:只能由接口中的默认方法调用
4、其他特点
- 单继承,多实现
- 重名的默认方法和抽象方法,必须重写一次
- 接口可以多继承extends
- 不可定义变量,只能定义常量
- 没有构造和静态代码块
二、多态
1、概述
- 同一行为的不同表现形式
- 前提:继承/实现
- 格式体现:父类引用指向子类对象(父类=new子类)
2、好处
- 父类类型作为方法形式参数,传递子类对象给方法,进行方法的调用
- 使程序简单,具有良好扩展性
3、引用类型转换
- 向上转型:默认,父类引用指向子类对象时
- 向下转型:强制类型转换
- 为什么转型:需要调用子类特有的方法时
- 转型的异常:ClassCastException
- 给引用变量做类型校验:if(a instanceof Cat)
三、综合案例
USB接口、笔记本类、鼠标类、键盘类实现各自功能
最新文章
- Linux 内核编译
- Android 中Thread,Handler,Loop学习
- 无需输入密码的scp/ssh/rsync操作方法
- Linux第13周学习笔记
- 图书封面制作-ps图片处理使用教程
- 410. Split Array Largest Sum
- HTTP请求大全
- SD-关于定价日期的设置
- PHPthinking官方论坛
- Selenium IDE安装
- linux常用的监控命令
- Windows Server 2016-启用默认Windows搜索服务
- sql---->;sql-summary&;mysql-summary
- [Spring Boot] Singleton and Prototype
- spring基础回顾
- 一个残酷的生鲜O2O之梦
- (0.1)windows下的mysql配置使用步骤
- python实战——文本挖掘+xgboost预测+数据处理+准确度计算整合版
- Python-Scrapy创建第一个项目
- File类,递归
热门文章
- 将java的项目jar包打成镜像
- 基于electron+vue+element构建项目模板之【自定义标题栏&;右键菜单项篇】
- 使用docker-compose.yml安装rabbitmq集群
- Logstash:在 Docker 中部署 Logstash
- Python实现给图片加水印功能
- Leetcode栈&;队列
- 洛谷P2517 HAOI2010 订货 (费用流)
- NOI2015 洛谷P1955 程序自动分析(并查集+离散化)
- 鸟哥linux私房菜习题总结
- Vue中使用Switch开关用来控制商品的上架与下架情况、同时根据数据库商品的状态反应到前台、前台修改商品状态保存到数据库