java无忧网

标题: 设计1个抽象类(假设为A,至少包含一个抽象方法)、1个接口 [打印本页]

作者: java无忧网    时间: 2020-4-11 10:32
标题: 设计1个抽象类(假设为A,至少包含一个抽象方法)、1个接口
1、设计1个抽象类(假设为A,至少包含一个抽象方法)、1个接口(假设为B,至少包含一个抽象方法)。
2、设计1个类C继承A,并且实现接口B。
3、设计1个类D继承A,并且实现接口B。
4、在测试类的main函数中,通过抽象类A的引用调用实现多态,通过接口B的引用调用实现多态。
所有类名自己定义,以上A、B、C、D均为假设。

/**
* 水果抽象类
*/
public abstract  class Fruit {
      //获取重量
    abstract public double getWeight();
}


/**
*商品接口类
*/
public interface Product {

       
        //打印商品信息
        public void printInfo(String message);
}



/**
*
*香蕉类 继承 抽象类 实现接口
*
*/
public class Banana extends Fruit implements Product{
    private double weight;//定义 重量

    public Banana(double weight) {
        this.weight = weight;
    }

    //获取重量
    public double getWeight() {
        return weight;
    }

        //打印商品信息
        public void printInfo(String message) {
                System.out.println("这是香蕉:"+message);
               
        }
}


/**
* 橙子类 继承 抽象类 实现接口
*/
public class Orange extends Fruit implements Product {
    private double weight;//定义 重量

    public Orange(double weight) {
        this.weight = weight;
    }

    //重写体重方法
    public double getWeight() {
        return weight;
    }

        //打印商品信息
        public void printInfo(String message) {
                System.out.println("这是橙子:"+message);
        }

}



public class Test {

        public static void main(String[] args) {
               
                //在测试类的main函数中,通过抽象类A的引用调用实现多态,通过接口B的引用调用实现多态
                Fruit fruit=new Orange(9);
            double weight=fruit.getWeight();
                System.out.println("橙子重量为:"+weight);
               
                Product product=new Orange(12);
                product.printInfo("又香又甜,6块钱一斤");

        }

}







欢迎光临 java无忧网 (http://www.javawyw.com/) Powered by Discuz! X3.2