天天看点

java多态举例_Java中多态举例说明

这里我也就大概说一下他们的关系, 接口就是动物,然而每一个类就是一种动物 给猫有两个功能:叫和睡觉 狗:叫 在f方法里面可以把猫的功能实现 但不能实现狗的功能 在主方法里面有一个猫有一个狗 分别调用  这里一个类可以继承于多个接口下面 继承的多个接口用,分开 再举个例子就是 鳄鱼和蚂蚁都能爬,但是鳄鱼还能进水,而蚂蚁不行 鳄鱼可以继承陆地和水 而蚂蚁只能继承陆地

interface Animal{//接口

void show();

}

class cat implements Animal{//猫是动物的一种,就继承在他下面

public void show() {

System.out.println("喵喵喵……");

}

public void sleep() {

System.out.println("睡觉……");

}

}

class dog implements Animal{//狗同上

public void show() {

System.out.println("汪汪汪……");

}

}

public class 多态 {

public static void main(String[] args) {

Animal a = new cat ();

a.show();

Animal b = new dog();

b.show();

f(a);

f(b);

}

public static void f(Animal animal) {

if(animal instanceof cat) {//Java自带方法看an是不是cat的子集

//如果不是cat的子集,就跳过,dog中没有睡觉一说

cat cat = (cat) animal;

cat.show();

cat.sleep();

}

else {

System.out.println("this animal is not a cat");

}

}

}