A:
public class A {
private int t;
public A() { t++; }
public int getT(){
return t;
}
}B:
import java.util.ArrayList;
public class B {
private ArrayList s;
public B() { s = new ArrayList(); }
public void printS(C c) {
int tOfA = c.getTofA();
s.add(t);
System.out.println(s+".....");
}
}public class c{
pubilc A a;
private c(){
}
public c(A a){
this.a = a;
}
public int getTofA(){
return a.getT();
} public static void main(String[] aa){
A a = new A()
C c = new C(a);
B b = new B();
b.printS(c);
}
}
public class A {
private int t;
public A() { t++; }
public int getT(){
return t;
}
}B:
import java.util.ArrayList;
public class B {
private ArrayList s;
public B() { s = new ArrayList(); }
public void printS(C c) {
int tOfA = c.getTofA();
s.add(t);
System.out.println(s+".....");
}
}public class c{
pubilc A a;
private c(){
}
public c(A a){
this.a = a;
}
public int getTofA(){
return a.getT();
} public static void main(String[] aa){
A a = new A()
C c = new C(a);
B b = new B();
b.printS(c);
}
}
这是个方法,但是还是有点不合我要求,可能是我的第三个要求没说清楚。
3.C是个测试用例。A,B类相当于用户接口,C类是用户调用接口用例,也就说明了,AB类对用户是透明的。用户的C类只能是调用A,B类中的方法,实例化B,A类,不能有太多的动作了。不知道我说清楚了没有?
也即能把A类中的一个变量值t,加到B类的变量s中去。C类调用a或b接口,就能得到整合后的S变量。期间S可能还有F类变量f值。,原理类似于A,B类。注:t可不局限于a中,可用另一个类封装,在B类中得到封装类,也就得到t的变量值了。(这是我想到的,可不知道如何实现)
public static void main(String[] aa){
A a = new A()
C c = new C(a);
B b = new B();
b.printS(C);
}
} 把D当作用户调用的接口,如果你还不习惯的话,把程序中的C和D互换就行了 ,写java没多久吧?