UserService接口
public interface UserService {
//新增用户,为了简化不体现参数
void addUser(); //接口方法不能体现{},即body(类体)
//修改用户,为了简化不体现参数
void editUser();
}
实现UserService接口的实体类
public class UserServiceImpl implements UserService {
@Override
public void addUser() {
System.out.println("新增一个用户");
}
@Override
public void editUser() {
System.out.println("对用户进行修改");
}
}
代理类
public class UserServiceProxy implements UserService{
private UserService realSubject;
@Override
public void addUser() {
System.out.println("代理类UserServiceProxy addUser方法的调用前执行...");
realSubject.addUser();
System.out.println("代理类UserServiceProxy addUser方法的调用后执行...");
}
@Override
public void editUser() {
System.out.println("代理类UserServiceProxy editUser方法的调用前执行...");
realSubject.editUser();
System.out.println("代理类UserServiceProxy editUser方法的调用后执行...");
}
public UserServiceProxy() {
}
public UserServiceProxy(UserService realSubject) {
this.realSubject = realSubject;
}
}
测试类
public class TestStaticProxy {
@Test
public void test(){
UserService resultSubject = new UserServiceImpl();
UserService proxy = new UserServiceProxy(resultSubject);
proxy.addUser();
proxy.editUser();
}
}
笔记,存在很多不足,请指出。