小白学IT--入门到入土--Java ⑬--多态,上转型和下转型,instanceof关键字

127 阅读1分钟

1.什么是多态?

官方版:同一个方法,根据发送对象的不同,从而产生出不同的运行方式的行为称为多态!
通俗版:多态就是事务的多样性,也可以理解为一种类别的多个形态!不同的形态可以产生不同的效果!

2.满足多态的必要条件有哪些?

(1). 要有继承关系
(2). 要有重写行为
(3). 要有父类变量指向子类对象的过程

3.什么是上转型?什么是下转型?

上转型和下转型就是用来描述父子类变量之间的相互转换的代码!

上转型:将子类对象转换为父类变量!(我以父亲的名义在工作!)
	Father f = new Son();
	f:是儿子伪装之后的父亲!

下转型:将父类变量强制转换为子类变量(重新做回儿子!)
	Son s = (Son) f;
	s:f脱掉伪装后做回原本的儿子!
            

4.什么是instanceof关键字?

我们在进行下转型时,不能对类型进行随意的转换!

换言之:只有变量的本质是子类对象,才可以下转型为子类变量,

例如:只有Animal a指代Tiger对象,才能将a强转为Tiger类型,一旦Animal a指代Snake对象,强转为Tiger就会出现类型转换错误!这个时候我们需要借助instanceof关键字判断这个变量到底属于哪个类的对象。

语法结构:变量 instanceof 类名