factory , .
:
public Interface I { }
private class Impl implements I {
}
I buildI() {
return new Impl();
}
, ( private) , factory .
, factory . , EnumSet factory Enum, EnumSet. - Enums 64 , .
factory, , , :
public interface Factory {
I buildI();
}
setFactory(new FactoryImpl());, factory.buildI(), .
Generics:
public interface GenericFactory<T> {
T buildInstance();
}
setFactory :
public void setFactory(GenericFactory<I> factory);
factory, :
public class FactoryImpl implements GenericFactory<I> {
@override
I buildInstance() {
return new impl();
}
}
factory , factory, .
, , - !
Java . , , , .
factory , , private, private.