接口不实现方法,但我却在程序中可以调用接口的方法,这是为什么?
如果我两个类都实现了接口的save方法,但执行的内容不一样,我在调用接口的方法时会怎么处理?
如果我两个类都实现了接口的save方法,但执行的内容不一样,我在调用接口的方法时会怎么处理?
解决方案 »
- 请教大虾们Hibernate many-to-one的Lazy设置的问题..在线等!!
- Spring 不解析JAR包 !!急
- 如何在hibernate中使用mysql函数
- 有经验的童鞋们大家刚开始都怎么过来的呀
- JFreeChart 在 fedora 9 系统下出现中文乱码问题!
- MS SQL Server 2000的JDBC驱动程序
- 关于多对一关联的问题 Exception in thread "main" org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
- Online Wait
- 求javascript高手帮忙!
- 机器在配置完j2ee1.3和tomcat之后,打开网页的时候不定期的在又下角弹出广告(brought to you HenBang),请问这是什么原因?
- Hibernate 怎么报这样的错?
- 求教服务器问题
接口是不能实例化的,也就是说没有提供接口的方法是无法访问到接口的方法的。不同的类可以实现同一个接口。如果我两个类都实现了接口的save方法,但执行的内容不一样,我在调用接口的方法时会怎么处理?
如: IA a = new AI(); a.say(); //调用的是AI的say方法
IB b = new BI(); b.say(); //调用的是BI的say方法
实现类(发布命令的类)是spring自己的类。
当然他也会让你有自己的接口啥的
如此如此
//接口A
public interface A {
public void save();}
实现类B和C
//B类
public class B implements A{ public void save() { System.out.println("在这里面定义B自己的业务逻辑!");
}}
//C类
public class C implements A{ public void save() {
System.out.println("在这里面定义C自己的业务逻辑!");
}}
//测试类TestBC
public class TestBC {
public static void main(String args[]) {
A a1=new B();
a1.save();
A a2=new C();
a2.save();
}}
//打印输出:
在这里面定义B自己的业务逻辑!
在这里面定义C自己的业务逻辑!
里面涉及了面向对象思想里面的面向接口编程的思想!!呵呵!!
public void fun();
}Class B implements A {
public void fun(){ System.out.println("B");
}Class C implements A {
public void fun(){ System.out.println("B");
}A b = new B();
A c = new C();父类引用指向子类实现。