2010-07-12 23 views
1

可能重复:
Why abstract classes necessary?当抽象Classess实际上被使用?

这里是具有1个而不抽象方法抽象类一个程序。它也工作得很好。 那么什么是抽象类的用法,任何它如何不允许创建对象,我们可以使用这个与具体类来实现在抽象类中定义的方法,我们必须扩展抽象类,那么为什么不直接在具体类中为什么需要的抽象类。 任何人都可以请解释一下吗?

方案:

abstract class demo { 
public void show() { 
System.out.println("not abstract method"); 
} 
// public abstract void display(); 
} 
class demo1 extends demo { 
public void display() { 
System.out.println("abstract method"); 
}} 

class program { 
public static void main(String args[]) { 
demo d = new demo1(); 
d.show(); 
d.display(); 
//d.display1(); 
} 
} 
+2

您可以使用大写,段落还是两者来使您的问题更具可读性吗? – 2010-07-12 13:17:15

回答

0

有时简直是有用的知道,一个对象是从一个从一些“父”抽象类扩展一个类创建。例如,如果您正在编写包含许多不同类型事件的自定义事件处理程序,则您不会知道每个事件将包含的数据类型,或者需要使用该数据的方法。如果你创建了一个名为“事件”父抽象类,你可以再扩展该类成的MouseEvent,KeybaordEvent,NetworkEvent等和他们都传递给一个事件处理程序的方法,如

public void handleEvent(Event e){ ... } 

然后你就可以决定哪些特定的排序它的事件对象,并相应地处理它。

相关问题