目录
  1. 1. static
    1. 1.1. 类变量和类方法(静态变量和静态方法)
    2. 1.2. 实例变量和实例方法(非静态变量和非静态方法)
    3. 1.3. 静态工厂设计模式
    4. 1.4. 构建设计模式
second

static

类变量和类方法(静态变量和静态方法)

  • 类变量和类方法再字节码加载完毕后就已经被初始化,在JVM中独一份
  • 在创建对象之前就可以通过类名调用类方法
  • 类中的各对象在创建后都保留类变量的副本,它们共享类变量
  • 类方法不能调用实例方法,这与它们在JVM先后顺序有关

实例变量和实例方法(非静态变量和非静态方法)

  • 实例变量会在对象实例化后初始化,有多少对象就有多少实例变量
  • 实例方法也在类字节码加载完毕后就准备好了,但是在对象实例化之前不能被调用
  • 实例方法可以调用类方法,反之则不行

静态工厂设计模式

构造器被private修饰时,就不能够在本类外直接通过new新建对象
此时,可以在类内部声明一个public修饰的静态工厂方法代替构造器的功能
它返回本类对象,方法体中调用私有化的构造器创建对象,并返回这个对象

  • 静态工厂方法命名比构造方法更灵活,不必规定为类名
  • 静态工厂方法返回的数据类型更丰富,而不仅仅是所在类对象

构建设计模式

  • 提供一个或多个构造对象的静态工厂方法,参数通常时对象的必填属性
  • 同时还会提供一些可选属性的设值方法,某种程度上替代了set方法
  • 这些设值方法在对可选属性赋值后返回了本对象(return this),因此可以被连缀调用

文章作者: Lu Bo
文章链接: http://yoursite.com/2019/10/25/second/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 卢波
打赏
  • 微信
  • 支付寶