effective java(一)遇到多个构造器参数 时要考虑用构建器
来源:互联网 发布:tensorflow 汉字识别 编辑:程序博客网 时间:2024/05/20 06:22
当一个类的变量比较多,构造函数也比较多,用重载构造函数的方法,会导致有客户端代码比较难维护,用这种Builder构造器来实现,扩展性好,便于维护。
/** * Created by wzj on 2016/9/11. */public class BuilderMode{ private int id; private String name; private String age; private String score; public static class Builder { //初始化 private final int id; private String name = ""; private String age = ""; private String score = ""; //id是不能够改变的 public Builder(final int id) { this.id = id; } public Builder name(final String name) { this.name = name; return this; } public Builder age(final String age) { this.age = age; return this; } public Builder score(final String score) { this.score = score; return this; } public BuilderMode build() { return new BuilderMode(this); } } //构造函数 public BuilderMode(Builder builder) { this.id = builder.id; this.name = builder.name; this.age = builder.age; this.score = builder.score; } @Override public String toString() { return id + "--" + name + "--" + age + "--" + score; } public static void main(String[] args) { //构建对象 BuilderMode.Builder builder = new BuilderMode.Builder(1001); BuilderMode builderMode = builder.name("wzj").age("23").score("100").build(); System.out.println(builderMode.toString()); }}
0 0
- effective java(一)遇到多个构造器参数 时要考虑用构建器
- Effective Java -- 遇到多个构造器参数时要考虑用构建器(Builder)
- Effective Java第二条:遇到多个构造器参数时要考虑用构建器
- Effective Java (2) - 遇到多个构造器参数时要考虑用构建器
- Effective Java 第二条:遇到多个构造器参数时要考虑用构建器
- Effective-Java学习笔记 遇到多个构造器参数时要考虑用构建器
- effective java(2) 之遇到多个构造器参数时要考虑用构建器
- 遇到多个构造器参数时要考虑用构建器——Effective Java 读书笔记
- 《Effective java》读书记录-第2条-遇到多个构造器参数时要考虑用构建器
- Effective Java 2.2——遇到多个构造器参数时要考虑用构建器
- Effective Java 创建和销毁对象 2.遇到多个构造器参数时要考虑用构建器
- 读《effective java》笔记一:遇到多个构造器参数时要考虑用构造器
- Effective java第二条:遇到多个构造器参数时要考虑用构造器
- 2、遇到多个构造参数的时候需要考虑使用构建器(effective java)
- Effective Java 2 -- 遇到多个构造器参数的时候考虑构建器
- Effective Java记录2:遇到多个构造器考虑用构建器(Builder)
- [Effective Java] 第2条 遇到多个构造器参数时要考虑用构造器
- effective java读书札记值第2条:遇到多个构造器参数时要考虑用构造器
- java and python学习——第二周leetcode刷题
- 腾讯2017年校园招聘笔试题第二题
- Java的网络编程
- sql rollup and cube
- c#TextBox输入框自动提示、自动完成、自动补全功能
- effective java(一)遇到多个构造器参数 时要考虑用构建器
- Android动态壁纸详解
- 判断整数k(k<1000)能被两个质数相加的组合(低效率 求高效率的方法)
- Arduino学习(一):入门篇:软硬件安装 以及 hello,world编译执行
- java8移除永久代
- 【codeforces711B】Chris and Magic Square
- 【note】PAT甲级刷题笔记
- 6.vc从零开始 -- Win32项目hello world(四)
- iOS 通过图片文件头,获取图片类型,以及图片尺寸