静态内部类-建造者模式
静态内部类
静态内部类,顾名思义就是位于java
类中的类,只不过是为了便于在外部类创建前对其加以调用,我们将其内部类用static修饰符加以修饰。
它具有以下特点:
- 静态内部类如果要访问外部的成员变量或者成员方法,那么对应的外部成员变量或者成员方法必须是静态的。
- 静态内部类属于外部类,而不是属于外部类的对象。
- 静态内部类的存在往往是辅助于外部类的,因而静态内部类往往和外部类一起来使用,而不是自己单独使用。
- 会生成两个
.class
文件,一个是外部的类Outer.class
,另一个是Outer$Inner.class
建造者模式
建造者模式(Builder Pattern),使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
一个Builder
类会一步一步构造最终的对象。该Builder
类是独立于其他对象的。
静态内部类-建造者模式
静态内部类-建造者模式,兼具上述两种之特点,通过内部类辅助外部类,我们可以简化我们的代码编写,提高代码的编写效率,同时它也提供了一种创建对象的最佳方式,通过这种方式创建的对象,其即便是在高并发下也有不俗的表现。
正因为如此,其在现在的程序开发中应用也变得越来越广,比如说Lombok
官网中的@Builder
就是基于该原理来实现的。
源码
Person.java
package com.lyc.builder;
public class Person {
private int id;
private String name;
private int age;
private String address;
public Person