1 现状:接口和实现分离主,一个功能要两个以上的文件完成,项目中文件多,乱,不利用阅读和调试
改进:接口和实现可以合一,增加默认实现
public interface MyService {
int add(int i,int j);
}:{
int add(int i,int j){
return i+j;
}
}: MyServiceImpl1{ int add(int i,int j){
return (i+j)*2;
}
}: MyServiceImpl2{ int add(int i,int j){
return (i+j)*3;
}
}
test:
MyService myService1=new MyService () ;
MyService myService2=new MyServiceImpl1() ;
MyService myService3=new MyServiceImpl2() ;
myService1.add(1,1) //2
myService2.add(1,1) //4
myService3.add(1,1) //6
2 所有返回void的默认返回this,可以在不改动原来代码的情况下实现方法链
改进:接口和实现可以合一,增加默认实现
public interface MyService {
int add(int i,int j);
}:{
int add(int i,int j){
return i+j;
}
}: MyServiceImpl1{ int add(int i,int j){
return (i+j)*2;
}
}: MyServiceImpl2{ int add(int i,int j){
return (i+j)*3;
}
}
test:
MyService myService1=new MyService () ;
MyService myService2=new MyServiceImpl1() ;
MyService myService3=new MyServiceImpl2() ;
myService1.add(1,1) //2
myService2.add(1,1) //4
myService3.add(1,1) //6
2 所有返回void的默认返回this,可以在不改动原来代码的情况下实现方法链