把对象当参数传递
对象 参数传递
2023-09-11 14:17:08 时间
按照如下要求,利用接口做参数,写计算器,能完成加减乘除运算
(1) 定义一个接口Computer,包含一个方法int compute(int n,int m)(2) 设计四个类分别实现此接口,完成加减乘除运算
(3) 设计一个类UseComputer,类中含有方法:public void useComputer(Computer cp,int n1,int n2),
此方法能够 用传递过来的对象调用computer方法完成运算,并输出运算的结果。
(4) 编写测试类,调用(3)中UseComputer中的方法useComputer()分别完成加减乘除运算,打印出结果。
代码如下:
package com.Test11;
interface Computer{
public int compute(int n,int m);
}
//加法
class Add implements Computer{
public int compute(int n,int m) {
return n+m;
}
}
//减法
class Subtract implements Computer{
public int compute(int n,int m) {
return n-m;
}
}
//乘法
class Multiply implements Computer{
public int compute(int n,int m) {
return n*m;
}
}
//除法
class Divide implements Computer{
public int compute(int n,int m) {
return n/m;
}
}
class UseComputer{
public void useComputer(Computer c,int n1,int n2) {
System.out.println(c.compute(n1, n2));
}
}
public class Test11_6 {
public static void main(String[] args) {
UseComputer use=new UseComputer();
use.useComputer(new Add(), 20, 10);
use.useComputer(new Subtract(), 20, 10);
use.useComputer(new Multiply(), 20, 10);
use.useComputer(new Divide(), 20, 10);
}
}
相关文章
- Jquery如何序列化form表单数据为JSON对象 C# ADO.NET中设置Like模糊查询的参数 从客户端出现小于等于公式符号引发检测到有潜在危险的Request.Form 值 jquery调用iframe里面的方法 Js根据Ip地址自动判断是哪个城市 【我们一起写框架】MVVM的WPF框架(三)—数据控件 设计模式之简单工厂模式(C#语言描述)
- 2.JAVA编程思想——一切都是对象
- Python帮助函数调试函数 用于获取对象的属性及属性值
- Vue - 函数的参数传递自身 DOM 对象(标签绑定的函数)
- ObjectStateManager 中已存在具有同一键的对象。ObjectStateManager 无法跟踪具有相同键的多个对象
- SAP MM 一个含有多个账号分配对象的行项目的PO及其收货
- Objective-C Runtime 运行时之一:类与对象
- JNI入门课程-第四章:JNI更改java对象属性值以及调用方法
- 拒绝了对对象 'data'(数据库 'xxx',所有者 'dbo')的 SELECT 权限
- HTML5 FormData 方法介绍以及实现文件上传:上传文件实例、FormData 对象方法介绍
- C++ | 探究拷贝对象时的一些编译器优化
- Unity Lua 之 在 Unity 中 Lua访问C# 的new 对象,访问静态属性、方法,访问成员属性、方法
- C# 对象哈希码
- Elite Container DELPHI下的一个轻量级IoC对象容器
- python函数参数传递 可更改对象 不可更改对象