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);
}
}

Java基础-继承 利用接口做参数,写个计算器,能完成+-*/运算的更多相关文章
- 38.利用接口做参数,写个计算器,能完成+-*/运算 (1)定义一个接口Compute含有一个方法int computer(int n,int m); (2)设计四个类分别实现此接口,完成+-*/运算 (3)设计一个类UseCompute,含有方法: public void useCom(Compute com, int one, int two) 此方法要求能够:1.用传递过来的对象调用comp
//接口Compute package jieKou; public interface Compute { int Computer(int n,int m); } //加 package jieK ...
- 利用接口做参数,写个计算器,能完成+-*/运算 (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. ...
- Java基础——继承、接口
一个对象变量(例如,变量e)可以引用多种实际类型的现象被称为多态(polymorphism). 在运行时能够自动地选择调用哪个方法的现象称为动态绑定(dynamic binding). 在Java程序 ...
- Java基础-Collection子接口之Set接口
Java基础-Collection子接口之Set接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 学习Collection接口时,记得Collection中可以存放重复元素,也可 ...
- Java基础-Collection子接口之List接口
Java基础-Collection子接口之List接口 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们掌握了Collection接口的使用后,再来看看Collection接口中 ...
- 《Java基础——抽象与接口》
Java基础--抽象与接口 一.抽象: 规则: 关键字 abstract 修饰的类称为抽象类. 子类通过关键字extends实现继承. 关键字 abstract 修饰的方法称为抽象方法,抽 ...
- Java基础-通过POI接口处理xls
Java基础-通过POI接口处理xls 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.
- 《Java基础——继承》
Java基础--继承 一.类的继承: 规则: 1.一个子类只能有一个父类,但一个父类可以有多个子类,每个子类都可以作为父类使用. 2.若一个类没有声明父类,则默认其父类为Object. 3.父 ...
- Java基础---继承、抽象、接口
一.概述 继承是面向对象的一个重要特征.当多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继那个类即可.这时,多个类可以称为子类,单 ...
随机推荐
- 解决Android SDK Manager更新、下载速度慢
hosts文件里面原来的内容不做修改,只是添加内容 方法/步骤 先看看如何加快更新速度,再说如何更新. 首先更新host文件,如图,打开目录 C:\Windows\System32\drivers\e ...
- Linux下Chrome浏览器不支持WebGL的解决方式。
今天使用Chrome浏览器,总是报这样一个错误: Uncaught TypeError: Cannot read property 'canvas' of null. 细看之下是无法获取WebGL上下 ...
- Extjs4.2或以上 使用自定义事件时报错问题
最近使用了extjs 自定义事件模型,代码如下: function Person(name) { this.name = name; this.addEvents('walk'); } Ext.ext ...
- 成功转移安卓手机QQ聊天记录
废话先不说,直接上干货: 只要把两个地方的数据完整的复制到新手机对应位置就可以了,但过程相当坎坷: /data/data/com.tencent.mobileqq /sdcard/Tencent/Mo ...
- 基于VC的声音文件操作(五)
(六)读取波形文件的实例 1.打开文件后,可通过HMMO句柄获得文件中的波形部份:MMCKINFO mmckinfo;mmckinfo.fccType = mmioFOURCC('W','A','V' ...
- H5 canvas填充文字自动换行
canvas是H5中非常重要,非常常用,也是非常强大的一个新标签,美中不足的事,canvas中没没有自动换行的属性,我的第一反应是,字符串截取,然后计算每行的距离来实现自动换行.. 然后百度了一下,已 ...
- Spring 3种注入方式
spring的三种注入方式: 接口注入(不推荐) getter,setter方式注入(比较常用) 构造器注入(死的应用) 关于getter和setter方式的注入: autowire="de ...
- fatal error C1083: 无法打开预编译头文件:“Debug\a.pch”:No such file or directory
一.解决方法 右键点击你创建的项目,选择“属性标签”点击属性,弹出“项目属性页”,在左侧找到以下位置 配置属性 --> C/C++ --> 预编译头,并选择它:在右边的菜单中选择 “ ...
- java提高篇(十四)-----字符串
可以证明,字符串操作是计算机程序设计中最常见的行为. 一.String 首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象.查看源码就会发现String类为f ...
- jQuery实现返回顶部
由于项目需要,写了个返回顶部的小功能... /*返回顶部*/ function toTop() { $(".to_top").hide(); $(window).scroll(fu ...