抽象类 多态 final关键字

**

1 抽象类(关键词abstract)

**
1 有些类只能被用来继承,不能直接构造对象
2 class前面加abstract限定词,表示是抽象类
3 abstract可以修饰方法,表示抽象方法
4 如果一个类不是抽象类,则必须把所有的方法都实现(包括父类中定义的抽象方法)
5 抽象方法只能出现在抽象类中,有抽象方法的一定是抽象类,抽象类不一定全都是抽象方法
6 抽象类 abstract class A {}
7抽象方法 abstract void method(); 抽象方法后面没有方法体

2 final关键字

1 final class A {} 不能被继承
2 final void method() {}; 不能被覆写
3 有 final 方法,并不要求class也是final
4 final修饰属性,属性的值不能变

3 多态

对于一个线性表
1 头插/尾插的方法
对于不同的线性表(顺序表|链表)头插/尾插的行为是不一样的

父类引用类型 变量=子类对象;
ArrayList extends List ; LinkedList extends List;
ArrayList a=new ArrayList();
LinkedList b=new LinkedList;
多态
List a=new ArrayList();
List b=new LinkedList();
向下转型
父类 引用=子类对象;
LIst list=new ArrayList();
向下转型
子类 引用=父类对象
ArrayList arraylist=(Arraylist)list//不能直接转型
假如list不是ArrayList类型,运行时会抛异常
if(list instanceof ArrayList)
{arrayList=(ArrayList)list;}
如果list是ArrayList的对象,则转换

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值