对于接口的作用,在一些小的项目上,很难看出其发挥的优势。这就使一些经常的做小项目的开发人员,做时间久了就感觉不到它有什么好的,有时候写起来还麻烦,干脆不用了。其实,在一些大项目上,接口的作用是发挥地相当的明显的。
比如:如果你开发业务逻辑代码,当你好不容易的实现了它全部的功能,突然用户需求要改,你在修改你代码的同时,调用你代码的其它人也会改,如果代码关联性强的话,会有很多人都要改动代码,这样一来二去,程序会变得相当的不稳定,而且可能还会出现更多的新Bug,所有人都可能会陷入混乱。
A类中有 void m1(),void m2(),void n1()三个方法;
B类中有 void m1(),void n1(),void n2()三个方法;
A类和B类公有的方法是m1()和n1(),AB类可以当成公有接口,A和B实现这个接口即可。
A和B中还会有其他的接口方法,实现其他类然后实现方法即可。
优点1:统一访问,接口方法相同,实现不同
查学生:AB ab=new A(). ab.m1();
查老师:AB ab=new B(); ab.m1();
优点2:java不支持多重继承,但是可以实现多个接口,这个在某种程度上可以看做进行多重继承的一种办法
public interface AB {
public void m1();//查询某个信息表
public void n1(String id);//根据id查询某个人
}
public class A implements AB {
@Override
public void m1() {
//查询学生表
}
//第二个接口的独有方法(这里我就不写了)
public void m2() {
}
@Override
public void n1(String id) {
//根据id查学生
}
}
public class B implements AB {
@Override
public void m1() {
//查询教师表
}
@Override
public void n1(String id) {
//根据id查教师
}
//第二个接口的独有方法(这里我就不写了)
public void n2() {
}
}