大数据之JAVA基础(七):接口和多态

一、接口

1.概念
接口是功能的集合,是比抽象类更抽象的类

2.定义(Interface关键字)
public interface name {
抽象方法1;
抽象方法2;
抽象方法3;
};

3.特点:
1)接口中的方法均为公开访问的抽象方法
2)接口中无法定义普通的成员变量,只能定义静态常量 public static final
3)类与接口的关系为:类实现了接口,使用implements关键字
4)实现接口的类,需要重写所有接口方法,然后才能进行实例化。否则子类是一个抽象类
5)接口不可以创建对象

4.优点:
1)接口是可以多实现的:这样就避免了多继承问题(多继承时,子类不确定使用哪个父类的特定方法,而多实现接口就可以,因为接口中根本就没有方法体)
2)接口的出现,打破了单继承的局限性
3)接口的出现,拓展了功能
4)接口其实就是暴露出来的规则

二、多态

1.定义:
父类的引用变量可以指向子类的对象,既一种物质的多种形态

2.前提:
必须具有子父类关系或者具有接口继承关系

3.格式:
父类类型 name = new 子类类型();

4.注意事项:
1)子类如果重写了父类的方法,当子类调用方法的时候,调用的是子类重写之后的方法;
2)fu f = new zi(); 对于这样的多态调用,变量调用父类的,方法则调用子类的方法

5.多态转型
1)向上转型:
Person p = new Student();

2) 向下转型:
当一个已经向上转型过的变量,那么这个变量是可以通过强制转换变成子类的引用,这个过程就是向下转型:Student s = (Student) p;

3)什么时候使用向上转型:
当变量不固定(可以是子类1,可以是子类2等),而且不需要面对子类类型,使用父类就能完成相应的操作,这种情况,使用向上转型

4)什么时候使用向下转型:
当已经向上转型的变量又想使用子类特有功能的时候,可以向下转型(强转)

6.优缺点:
1)优:可以将子类类型转换成父类的类型,隐藏了子类的类型,提高了代码的拓展性
2)缺:多态调用,只能使用父类的共性内容,无法使用子类的特有功能


三、instanceof关键字
1.定义:
用来判断某个对象是否属于某种数据类型

2.格式:
boolean b = 对象 instanceof 数据类型;







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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值