N年不用Java了 也没有编译器 不保证没错+_+
abstract class Ghost
{
abstract void scare_people();
static Ghost make_ghost(int type)
{
if (type == 0)
{
return new Boo();
}
return new Gah();
}
}
class Boo extend Ghost
{
void scare_people()
{
System.println("Boo");
}
}
class Gah extend Ghost
{
void scare_people()
{
System.println("Gahh");
}
}
public class Test
{
void Main(String[] arg)
{
Ghost g = Ghost.make_ghost(Integer.parseInt(arg[0]);
g.scare_people();
}
}
同一个方法,可以在不同的对象中调用