2013-12-08 3 views

ответ

4

BorderFactory На самом деле может не создавать новые экземпляры каждый раз, когда вы его вызываете, а возвращать ссылку на существующую, поэтому сохраняете некоторые ресурсы. См. Также javadoc.

Вы также можете проверить actual implementation, если вы действительно хотите знать, что происходит внутри BorderFactory ;-)

+0

+1 для справки по документации (ну, собственно, причина для ответа) – Sage

1

Согласно Effective Java, элемент-1: Рассмотрим статические фабричные методы вместо конструкторами. BorderFactory.createTitledBorder("") статический метод завода, который имеет следующие преимущества:

  1. Одним из преимуществ статических фабричных методов является то, что, в отличие от конструкторов, они имеют имена.
  2. Второе преимущество статических заводских методов заключается в том, что в отличие от конструкторов они не обязаны создавать новый объект при каждом вызове.
  3. Третьим преимуществом статических заводских методов является то, что в отличие от конструкторов они могут возвращать объект любого подтипа возвращаемого типа.
  4. Четвертым преимуществом статических заводских методов является то, что они уменьшают детализацию для создания экземпляров с параметризованным типом.

Подробнее см. В книге.

+0

Элемент поставлен для того, чтобы сообщить нам, чтобы думать при его реализации. Но с уже реализованным классом мы должны знать, почему на самом деле они были выполнены для этого конкретного класса. – Sage

Смежные вопросы