interface Anamin
{
void eat();
void sleep();
}class zoo
{ class tiger implements Anamin
{
public void cat()
{
System.out.println("Anamin cat");
}
public void sleep()
{
System.out.println("Anamin sleep");
}
public Anamin getAnamin()
{
return new tiger(); }
}
}
/**
*
* @author Administrator
*/
public class Main
{
public static void main(String[] args)
{
zoo p=new zoo();
Anamin an= p.getAnamin();
an.eat();
an.sleep();
}}
{
void eat();
void sleep();
}class zoo
{ class tiger implements Anamin
{
public void cat()
{
System.out.println("Anamin cat");
}
public void sleep()
{
System.out.println("Anamin sleep");
}
public Anamin getAnamin()
{
return new tiger(); }
}
}
/**
*
* @author Administrator
*/
public class Main
{
public static void main(String[] args)
{
zoo p=new zoo();
Anamin an= p.getAnamin();
an.eat();
an.sleep();
}}
{
System.out.println("Anamin cat");
} eat()这个方法哪里去了??
2.Anamin an= p.new tiger().getAnamin();
{
void cat();
void sleep();
} class zoo
{ class tiger implements Anamin
{
public void cat()
{
System.out.println("Anamin cat");
}
public void sleep()
{
System.out.println("Anamin sleep");
} }
public Anamin getAnamin()
{
return new tiger(); }
} public class Main
{
public static void main(String[] args)
{
zoo p=new zoo();
Anamin an= p.getAnamin();
an.cat();
an.sleep();
} } 改成这样可以运行
第二,应将子类里面的方法写到外面运行结果:interface Anamin
Anamin cat
Anamin sleep
Press any key to continue...
{
public void eat()
{
System.out.println("Anamin cat");
}
public void sleep()
{
System.out.println("Anamin sleep");
}
public zoo getAnamin()
{
return new zoo();
}
public static void main(String[] args)
{
zoo p=new zoo();
zoo an= p.getAnamin();
an.eat();
an.sleep();
}
}
interface Anamin
{
void eat();
void sleep();
}
{
void eat();
void sleep();
}class zoo
{ class tiger implements Anamin
{
public void cat()
{
System.out.println("Anamin cat");
}
public void sleep()
{
System.out.println("Anamin sleep");
}
public Anamin getAnamin()
{
return new tiger(); }
}
}
/**
*
* @author Administrator
*/
public class Main
{
public static void main(String[] args)
{
zoo p=new zoo();
Anamin an= p.getAnamin();
an.eat();
an.sleep();
}}
1.tiger中没有实现eat()方法
2.Anamin an= p.new tiger().getAnamin();
zoo类中应该有getAnamin方法,tiger是zoo的内部类。
{
public static void main(String[] args)
{
zoo p=new zoo();
Anamin an= p.new tiger().getAnamin();
an.eat();
an.sleep();
} }
package test;interface Anamin {
void eat(); void sleep();
}class zoo { class tiger implements Anamin {
public void eat() {
System.out.println("Anamin eat");
} public void sleep() {
System.out.println("Anamin sleep");
} public Anamin getAnamin() {
return new tiger(); }
}
}/**
*
* @author Administrator
*/
class Main {
public static void main(String[] args) {
zoo p = new zoo();
Anamin an = p.new tiger().getAnamin();
an.eat();
an.sleep();
}}
{
void eat();
void sleep();
}
public class Zoo implements Anamin
{
public void eat()
{
System.out.println("Anamin eat");
}
public void sleep()
{
System.out.println("Anamin sleep");
}
public static Zoo getAnamin()
{
return new Zoo();
}
public static void main(String[] args)
{
Zoo an= getAnamin();
an.eat();
an.sleep();
}
}