Java中静态工厂方法命名规则(Effective Java (高效 Java) 第三版)

2021/4/14 20:31:29

本文主要是介绍Java中静态工厂方法命名规则(Effective Java (高效 Java) 第三版),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Java中静态工厂方法命名规则

  • from —— 类型转换方法,它接受单个参数并返回此类型的相应实例,例如:Date d = Date.from(instant);
  • of —— 聚合方法,接受多个参数并返回该类型的实例,并把他们合并在一起,例如:Set\ faceCards = EnumSet.of(JACK, QUEEN, KING);
  • valueOf —— from 和 to 更为详细的替代 方式,例如:BigInteger prime = BigInteger.valueOf(Integer.MAX_VALUE);
  • instance 或 getinstance —— 返回一个由其参数 (如果有的话) 描述的实例,但不能说它具有相同的值,例如:StackWalker luke = StackWalker.getInstance(options);
  • create 或 newInstance —— 与 instance 或 getInstance 类似,除此之外该方法保证每次调用返回一个新的实例,例如:Object newArray = Array.newInstance(classObject, arrayLen);
  • getType —— 与 getInstance 类似,但是在工厂方法处于不同的类中的时候使用。getType 中的 Type 是工厂方法返回的对象类型,例如:FileStore fs = Files.getFileStore(path);
  • newType —— 与 newInstance 类似,但是在工厂方法处于不同的类中的时候使用。newType中的 Type 是工厂方法返回的对象类型,例如:BufferedReader br = Files.newBufferedReader(path);
  • type —— getType 和 newType 简洁的替代方式,例如:List\ litany = Collections.list(legacyLitany);

总之,静态工厂方法和公共构造方法都有它们的用途,并且了解它们的相对优点是值得的。通常,静态工厂更可取,



这篇关于Java中静态工厂方法命名规则(Effective Java (高效 Java) 第三版)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程