JAVA抽象与接口

抽象

- 抽象类
  • 格式 class后面加上关键字abstract
  • abstract class 类名
  • 特点:不能直接实例化对象,通过多态的形式实现实例化 Animal a = new Animal();
  • 可以有抽象 ,也可以有具体方法
  • 有抽象方法的类必须定义为抽象类
  • 抽象类中可以有抽象方法,也可以没有
abstract不能和哪些关键字共存
  • private 冲突
  • final 冲突
  • static 无意义
成员特点:
成员变量
可以是变量 也可以是自定义的常量  final(不能被继承7)
构造方法
不是没有用,用于子类创建对象时访问父类的构造方法
成员方法
既可以是抽象方法 也可以是具体方法
抽象方法
修饰符 abstract,返回值类型,方法名(参数列表),没有方法体
具体方法:修饰符
 返回值类型,方法名(参数列表){方法体}
猫狗案例
具体事物:猫,狗
共性:姓名,年龄,吃饭,睡觉

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

老师案例
具体事物:基础班老师,就业班老师
共性:姓名,年龄,讲课。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

学生案例
具体事务:基础班学员,就业班学员
共性:姓名,年龄,班级,学习,吃饭

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

接口

接口特点
  • 接口用关键字interface表示
  • 格式:interface 接口名 {}
  • 类实现接口用implements表示
  • 格式:class 类名 implements 接口名 {}
接口不能实例化
  • 那么,接口如何实例化呢?
  • 按照多态的方式,由具体的子类实例化。其实这也是多态的一种,接口多态。
接口的子类
  • 要么是抽象类
  • 要么重写接口中的所有抽象方法
成员变量
只能是常量
默认修饰符 public static final
构造方法
没有,因为接口主要是扩展功能的,而没有具体存在
成员方法
只能是抽象方法
默认修饰符 public abstract
例1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值