JAVA 使用类的继承和接口实现多态
作者:互联网
1 题目
使用类的继承和接口实现多态举例
2 源代码
2.1 使用接口实现多态
2.1.1 源代码
abstract class Vehicle //交通车辆抽象类
{
abstract void consume();//使用能源
}
interface fare //费用接口
{
void charge(); //收费
}
class Bus extends Vehicle implements fare //公共汽车
{
@Override
void consume() //实现抽象类的抽象方法
{
System.out.println("此公交使用电力驱动");
}
@Override
public void charge() //实现接口的抽象方法
{
System.out.println("此公交收费1元/人");
}
}
public class TestBus
{
public static void main(String[] args)
{
Bus bus = new Bus();
bus.consume();
bus.charge();
}
}
2.1.2 运行结果
2.2 使用类继承实现多态
2.2.1 源代码
abstract class Animal //定义抽象类
{
String name;
int age;
abstract public void cry(); //定义抽象方法,动物会叫
}
/*class Animal //定义基类
{
String name;
int age;
public void cry()
{
System.out.println("动物会叫");
}
}*/
class Dog extends Animal //定义子类Dog,继承先后向类Animal
{
@Override
public void cry() //实现父类cry()方法
{
System.out.println("汪汪叫...");
}
}
class Cat extends Animal //定义子类Cat,继承抽象类Animal
{
@Override
public void cry() //实现父类cry()方法
{
System.out.println("喵喵叫...");
}
}
public class AnimalCry
{
public static void main(String[] args)
{
Dog dog = new Dog();
dog.cry(); //调用子类方法,不会产生歧义,强耦合
Cat cat = new Cat();
cat.cry(); //调用子类方法,不会产生歧义,强耦合
System.out.println("......");
//后期动态绑定:根据对象类型选择相应的方法
Animal ani1 = new Dog(); //向上转型安全
ani1.cry();
Animal ani2 = new Cat(); 向上转型安全
ani2.cry();
}
}
2.2.2 运行结果
标签:JAVA,void,cry,多态,接口,class,Animal,println,public 来源: https://blog.csdn.net/weixin_44410704/article/details/118048491