我知道如何设计简单流畅的界面类
我想知道如何写这样的东西(某些方法访问特定方法不是全部)
MyClass cls = new MyClass()
.A()
.A1()
.A2()
.A01()
.A02()
.B()
.B1()
.C()
.C1()
.C01()
.C02()
如何设计具有流畅界面的类并限制java中的访问?
答案 0 :(得分:1)
通常你创建一个核心类,并编写很多接口,然后通过一些入口点将它作为初始接口传递给用户:
public class EntryPoint {
MyClass myClass() {
return new Implementation();
}
}
// not visible to the user
class Implementation implements MyClass, A, B, C, A1, A2, ...{
Implementation A() { ... return this; }
Implementation A1() { ... return this; }
...
}
public interface MyClass {
A A();
B B();
C C();
}
public interface A {
A1 A1();
A2 A2();
}
public interface B {
B1 B1();
}
public interface C {
C1 C1();
}
...