怎么样返回一个接口类型

george_2006 2007-05-05 10:08:40
我做的一个程序,不知道怎么改:
public class TestInterface {
public static void main(String[] args) {
// TODO: Add your code here
B b=new B();
A a=B.re();
}
}
interface A{
public void run();
public void start();
}
class B{
public static A re(){
return A;
}

}
...全文
228 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
magicjava2 2007-05-07
  • 打赏
  • 举报
回复
不过怎么说,用什么方法来实现,总得把定义的接口给实现了吧!
wuhailiang1983 2007-05-07
  • 打赏
  • 举报
回复
public class TestInterface {
public static void main(String[] args) {
// TODO: Add your code here
B b=new B();
A a=B.re();
}
}
interface A{
public void run();
public void start();
}
class B{
public static A re(){
return new A()
{
public void run(){}
public void start(){}
};

}

}
可以通过匿名的内部类来实现
sunshupeng 2007-05-06
  • 打赏
  • 举报
回复
接口是用于多态(转型),重构的,请不要这样用。认真设计你的类。
infon 2007-05-05
  • 打赏
  • 举报
回复
public class TestInterface {
public static void main(String[] args) {
// TODO: Add your code here
B b=new B();
A a=b.re();
a.run();
a.start();
}
}
interface A{
public void run();
public void start();
}
class AImpl implements A{
public void run(){
System.out.println("Calling Aimpl.run()");
}
public void start(){
System.out.println("Calling Aimpl.start()");
}
}
class B{
AImpl a;
public B(){
a=new AImpl();
}
public A re(){
return a;
}
}
infon 2007-05-05
  • 打赏
  • 举报
回复
不明白你想要干什么?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧