1
、多态的概念
多态
:
多种状态
在面向对象的语言中
,
接口的不同的实现方式就是多态
多态性
:
允许你将你的父类引用设置成为一个或者更多的子类对象
2
、多态的格式
1
>
普通类中
父类 自定义变量名
=
new
子类
();
比如
:
class
F
{}
class
Z
extends
F
{}
F f
=
new
Z
();
2
、抽象类中
抽象类 自定义变量名
=
new
抽象类的子类
();
比如
:
public abstract class
Hero
{
public abstract
void
normalAttack
();
//
普通攻击
}
public class
YaSuo
extends
Hero
{
//
一个类继承于一个抽象类
,
就必须实现抽象类中的抽象方法
@Override
public
void
normalAttack
() {
System
.
out
.
println
(
"
闪现
"
);
}
public
void
m
(){
System
.
out
.
println
(
"
功击
"
);
}
}
public abstract class
Hero
{
public abstract
void
normalAttack
();
//
普通攻击
}
public class
HeroTest
{
public static
void
main
(
String
[]
args
) {
//
抽象类不可以创建对象
//
我们只能通过子类进行创建对象并且完成方法的重写和调用
Hero hero
=
new
YaSuo
();
hero
.
normalAttack
();
}
}
3
、接口的多态的格式
接口名 自定义变量名
=
new
实现类名称
();
比如
:
public interface
Skill
{
public
void
useSkill
();
//
使用技能的抽象方法
}
public class
ChengJie
implements
Skill
{
@Override
public
void
useSkill
() {
System
.
out
.
println
(
"
使用惩戒的技能
"
);
}
}
public class
SkillTest
{
public static
void
main
(
String
[]
args
) {
//
接口不能创建对象
,
我们就创建实现类的对象
Skill skill
=
new
ChengJie
();
}
}
3
、一句话总结多态
每种事物多种体现的形式
,
父类的引用指向子类的对象或者接口的引用指向实现类对象
,
就是多态。