Java基础-继承 利用接口做参数,写个计算器,能完成+-*/运算

38.利用接口做参数,写个计算器,能完成+-*/运算

(1)定义一个接口Compute含有一个方法int computer(int n,int m);

(2)设计四个类分别实现此接口,完成+-*/运算

(3)设计一个类UseCompute,含有方法:

public void useCom(Compute com, int one, int two)

此方法要求能够:1.用传递过来的对象调用computer方法完成运算

2.输出运算的结果

(4)设计一个测试类,调用UseCompute中的方法useCom来完成+-*/运算

package hanqi;

public interface Compute {

    int computer(int n,int m);

}
package hanqi;

public class Jia implements Compute {

    @Override
    public int computer(int n, int m) {
        // TODO 自动生成的方法存根
        return n+m;
    }

}
package hanqi;

public class Jian implements Compute {

    @Override
    public int computer(int n, int m) {
        // TODO 自动生成的方法存根
        return n-m;
    }

}
package hanqi;

public class Cheng implements Compute {

    @Override
    public int computer(int n, int m) {
        // TODO 自动生成的方法存根
        return n*m;
    }

}
package hanqi;

public class Chu implements Compute {

    @Override
    public int computer(int n, int m) {
        // TODO 自动生成的方法存根
        return n/m;
    }

}
package hanqi;

public class UseCompute {

    public void useCom(Compute com, int one, int two)
    {
        System.out.println(com.computer(one, two));
    }

}
package hanqi;

public class TestCeshi {

    public static void main(String[] args) {

        UseCompute a =new UseCompute();
        a.useCom(new Jia(), 2, 2);

        a.useCom(new Jian(), 2, 2);

        a.useCom(new Cheng(), 2, 2);

        a.useCom(new Chu(), 2, 2);

    }

}

时间: 2024-07-31 09:59:00

Java基础-继承 利用接口做参数,写个计算器,能完成+-*/运算的相关文章

利用接口做参数,写个计算器,能完成+-*/运算 (1)定义一个接口Compute含有一个方法int computer(int n,int m); (2)设计四个类分别实现此接口,完成+-*/运算 (3)设计一个类UseCompute,含有方法: public void useCom(Compute com, int one, int two) 此方法要求能够:1.用传递过来的对象调用compute

package com.homework5; public interface Compute { //声明抽象方法 int computer(int n,int m); } package com.homework5; public class jia implements Compute { @Override public int computer(int n, int m) { return n+m; } } package com.homework5; public class jia

2.35 Java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别

java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别 一.抽象 abstract作用:不能产生对象,充当父类,强制子类正确实现重写方法和类相比仅有的改变是不能产生对象,其他的都有,包括构造.属性等等任何一个类只要有一个抽象的方法就成了抽象类 抽象方法 public abstract A();①方法是抽象的,这个类也是抽象的:②子类必须重写抽象方法,除非子类也是抽象类 抽象类可以没有抽象方法,但一般不这么设计 二.接口 interface 接口也是Java的一种引用数据类型(J

java基础学习总结——接口

java基础学习总结——接口 一.接口的概念 JAVA是只支持单继承的,但现实之中存在多重继承这种现象,如“金丝猴是一种动物”,金丝猴从动物这个类继承,同时“金丝猴是一种值钱的东西”,金丝猴从“值钱的东西”这个类继承,同时“金丝猴是一种应该受到保护的东西”,金丝猴从“应该受到保护的东西”这个类继承.这样金丝猴可以同时从 “动物类”.“值钱的东西类”.“应该受到保护的东西” 这三个类继承,但由于JAVA只支持单继承,因此金丝猴只能从这三个类中的一个来继承,不能同时继承这三个类.因此为了封装现实生活

关于Java中继承和接口的理解

关于Java中继承和接口的理解 Java语言中,为了实现代码重用,设计了继承这一机制,但是,其设计成单继承,这样设计是有原因的,如下图: Figure1:deadly diamond of death 此图问题称为菱形问题(diamond problem),就是说,当A的子类B和C同时实现了A中的方法,则同时继承了B和C的子类D在调用该方法时会出现混乱,无法得知该调用哪一个方法. 既然不能实现多继承,我们就会考虑把很多方法就写在父类里,或者继承抽象类,实现其方法,但是,这样会导致一个问题,比如说

Java基础05 实施接口(转载)

经过封装,产品隐藏了内部细节,只提供给用户接口(interface). 接口是非常有用的概念,可以辅助我们的抽象思考.在现实生活中,当我们想起某个用具的时候,往往想到的是该用具的功能性接口.比如杯子,我们想到加水和喝水的可能性,高于想到杯子的材质和价格.也就是说,一定程度上,用具的接口等同于用具本身.内部细节则在思考过程中被摒弃. 在public和private的封装机制,我们实际上同时定义了类和接口,类和接口混合在一起.Java还提供了interface这一语法.这一语法将接口从类的具体定义中

古典音乐 (java基础 继承)

摘要: 原创出处: http://www.cnblogs.com/Alandre/ 泥沙砖瓦浆木匠 希望转载,保留摘要,谢谢! 一.前言 小朽不才,最近爱上了听古典音乐收录了,mozart ,贝多芬-等好听的歌很是喜欢.戴上耳机,打开电台,整理下java继承. 总结如下: 继承(extends) 方法覆盖(Mehtod Overriding) protected 向上转型 二. 继承(extends) 从编码中,咱们总是在不知不觉的用继承,明确的调用,或是隐式的调用了java根类Object.什

Java基础学习191221(可变参数,数组,Array类,稀疏数组,继承重写多态,抽象类,接口)

Java基础学习 可变参数 在方法声明中,在指定参数类型后加一个省略号(...). 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数.任何普通参数都必须在它之前声明. public class printMax { public static void main(String[] args) { printMax(1,5,8,78,415,15); } public static void printMax( double... numbers){ if (numbers.length

Java基础---继承、抽象、接口

一.概述         继承是面向对象的一个重要特征.当多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继那个类即可.这时,多个类可以称为子类,单独的这个类称为父类或者超类.例如:猫和豹子都是猫科动物,那么就可以说描述猫这个对象创建的类,是子类:而描述猫科动物这个对象创建的类,就是父类. 这样类与类之间就存在了继承的关系.子类可以直接访问父类中的非私有的属性和行为.在代码中通过extends关键字表示继承关系.例: class Sonexte

黑马程序员--java基础------继承,抽象,接口

-----------android培训.java培训.java学习型技术博客.期待与您交流!------------  继承 一.概述         继承是面向对象的一个重要特征.当多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继那个类即可.这时,多个类可以称为子类,单独的这个类称为父类或者超类. 这样类与类之间就存在了继承的关系.子类可以直接访问父类中的非私有的属性和行为.在代码中通过extends关键字表示继承关系.例: class