Fluent Interface(流式接口)
2024-09-12 21:24:18
我最初接触这个概念是读自<<模式-工程化实现及扩展>>,另外有Martin fowler大师 所写http://martinfowler.com/bliki/FluentInterface.html
Fluent Interface实例
Java 类Country
- package com.jue.fluentinterface;
- public class Country {
- private String name;
- private int code;
- private boolean isDevelopedCountry;
- private int area;
- Country addName(String name) {
- this.name = name;
- return this;
- }
- Country addCountyCode(int code) {
- this.code = code;
- return this;
- }
- Country setDeveloped(boolean isdeveloped) {
- this.isDevelopedCountry = isdeveloped;
- return this;
- }
- Country setAread(int area) {
- this.area = area;
- return this;
- }
- }
调用类
- /**
- * @param args
- */
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Country china = new Country();
- china.addName("The People's Republic of China")
- .addCountyCode(1001)
- .setDeveloped(false)
- .setAread(960);
- }
主要特征:
Country 的方法返回本身country,使调用者有了继续调用country方法的能力.
优势
1.有时候我们需要根据传入的参数数目不同定义不同的构造器。使用 FluentInterface就可以随意传递想要的数据,并保持他们的连贯。
java中的应用
StringBuffer append方法
最新文章
- SNAT,是源地址转换,其作用是将ip数据包的源地址转换成另外一个地址
- 【学习笔记&;训练记录】数位DP
- Linux中exec()执行文件系列函数的使用说明
- 学习BFC
- CRC16校验
- ListView练习
- 【Ubuntu Java 开发环境搭建 】
- grub名词理解
- 【测试环境】cywin的简单介绍
- acm课程练习2--1005
- Jquery页面跳转
- 实现input输入时智能搜索
- SQL Server分页查询的万能存储过程
- 736. Parse Lisp Expression
- 关于slavetable
- SqlServer select * into 对应 Oracle语法
- CSS选择器、层叠相关的基础知识
- 查看APK包签名的方法。
- 2、Reactive Extensions for .NET(译)
- Ansi 与 Unicode 字符串类型的互相转换
热门文章
- [Luogu2852][USACO06DEC]牛奶模式Milk Patterns
- 【WC2001】【cogs358】高性能计算机(动态规划)
- [BZOJ1083] [SCOI2005] 繁忙的都市 (kruskal)
- java微信公众号开发token验证失败的问题及解决办法
- springMvc(一)
- Win7硬盘的AHCI模式
- JavaScript:方法&;对象大全
- ASCII代码
- 设计模式之生成器(Builder)模式
- 一篇关于Maven项目的jar包Shell启动脚本