当前位置: 代码迷 >> Java相关 >> 一个抽象类的理解,还有这段小代码,求各位高手指教.
  详细解决方案

一个抽象类的理解,还有这段小代码,求各位高手指教.

热度:137   发布时间:2011-10-17 23:11:47.0
一个抽象类的理解,还有这段小代码,求各位高手指教.
//abstract class A 定义一个抽象类 A.
abstract class A
{
    public abstract void doSomething();//声明抽象方法 (public abstract void doSomething(); 权限修饰符后面 一定要加抽象类的标识.)
}
//抽象类的派生类 B
class B extends A
{
    public void doSomething()
    {
        System.out.println("do B");
    }
}
//抽象类的派生类 C
class C extends A
{
    public void doSomething()
    {
        System.out.println("do C");
    }
}
//定义一个普通公共类 _abstract
public class _abstract
{
    //主函数开始.
    public static void main(String[] args)
        {
            A a1 = new B();
            A a2 = new C();
            B b = new B();
            C c = new C();
            doSomething(a1);     //这里
            doSomething(a2);     //这里
            doSomething(b);      //这里,如果下面的方法不是用抽象类作参数,比如用C c做参数,这里会有什么问题?
            doSomething(c);          //这里
        }
    public static void doSomething(A a)
    {
        //这里,用抽象类,为什么
        a.doSomething();
    }
}

搜索更多相关的解决方案: 标识  声明  abstract  public  class  

----------------解决方案--------------------------------------------------------
如果在基类中有一部分接口与子类之间具有共性,而另一些接口不具备时,就要考虑用抽象类(abstract class),而所有接口在子类之间都不具有共性那么就要考虑使用接口(interface)。
----------------解决方案--------------------------------------------------------
  相关解决方案