一个使用enum实现多态的例子
2016-08-03 22:42
453 查看
下面的写法与直接 使用静态方法而言,可读性、可维护性更强
是不是有DSL的感觉....
当然enum反编译后,的确就是静态方法。
感谢刘光聪在简书上的分享
是不是有DSL的感觉....
当然enum反编译后,的确就是静态方法。
/** * Created by MyWorld on 2016/8/3. */ public enum Operation { PLUS("+") { @Override public int apply(int x, int y) { return x + y; } }, MINUS("-") { @Override public int apply(int x, int y) { return x - y; } }, TIMES("*") { @Override public int apply(int x, int y) { return x * y; } }, DIVIDE("/") { @Override public int apply(int x, int y) { return x / y; } }; private String op; Operation(String op) { this.op = op; } public abstract int apply(int x, int y); public String getOp() { return op; } public void setOp(String op) { this.op = op; } public static void main(String[] args) { System.out.println(Operation.PLUS.apply(1, 2)); } }
感谢刘光聪在简书上的分享
相关文章推荐
- 一个使用Flex和BlazeDS实现协作式数据输入的例子
- 一个使用Pro*C实现增删改查的小例子
- 使用CXF框架实现webservice的一个简单例子
- 使用 acl_cpp 库中的 http_request 类实现一个 HTTP 客户端请求的例子
- spring笔记--使用springAPI以及自定义类 实现AOP的一个例子
- 一个使用Pro*C实现增删改查的小例子
- 一个openlaszlo使用flash的共享对象实现保存客户端信息的例子
- 一个使用MFC实现Com聚合的例子
- 虚函数实现多态的使用例子
- 通过一个Socket例子理解Http协议(实战Java Web服务器--使用HTTP协议和JAVA类实现)
- 使用commons-fileupload.jar实现图片上传的一个小例子
- 一个Excel导入SQL server的例子(分别使用游标、CTE、master..spt_values实现)
- 写了一个ASP.Net2.0中使用"客户端回调"实现无刷新例子
- 一个使用Pro*C实现增删改查的小例子
- Flume例子:使用netcat和exec作为信源,logger和file作为信宿,并分别为每对信源和信宿实现一个信道
- 一个在HTML使用JavaScript实现调用Windows Shell.Application的例子。
- 一个Excel导入SQL server的例子(分别使用游标、CTE、master..spt_values实现)
- 使用tomcat和jotm实现的一个JTA的例子
- 一个App架构例子分析--UI层使用MVP模式;各层之间使用Otto实现通信
- JAVA学习--多态使用的一个例子