日期:2014-05-20  浏览次数:20716 次

若抽象类没有抽象方法要怎么继承?
public   abstract   class   two
{
  void   fn()
  {}

}

class   one   extends   two
{
public   static   void   main(String[]   args)
{
two   a=new   two();
}
void   fn()
{}
}

说抽象类不能被实例化,这抽象类并没有抽象方法。要怎么让这代码无误?

------解决方案--------------------
public abstract class two
{
void fn()
{}

}

class one extends two
{
public static void main(String[] args)
{
two a=new two();//two是抽象类当然不能实例化了..可以one a=new one();
}
void fn()
{}
}
------解决方案--------------------
抽象类不一定要有抽象方法,但是有抽象方法的一定是抽象类
------解决方案--------------------
抽象类不能通过new实例化,可把two a=new two();改为one a = new one();
------解决方案--------------------
恩 1楼说得对
------解决方案--------------------
抽象类不能被实例化
这是规矩。
------解决方案--------------------
抽象类可以没有抽象方法,继承时可以实现抽象方法,也可以覆盖非抽象方法,也可以什么都不做,如果没有抽象方法,你可以继承一个什么不做的类,或者覆盖其中一个方法都可以
------解决方案--------------------
抽象类不能被实例化

------解决方案--------------------
若抽象类没有抽象方法要怎么继承?
=========================
有没有抽象方法不重要,关键他是抽象类,就不能被实例化。。
------解决方案--------------------
抽象类不一定要有抽象方法
-------------------------


问下这句怎么解释?
-------------------------
用abstract修饰符修饰的类 就是抽象类 可以没有抽象方法 没有规定抽象类一定要有抽象方法
------解决方案--------------------
抽象类不一定要有抽象方法
它定义为抽象类,主要是显式的提醒你,

比如常见的Adapater,里面没有抽象方法,但是就定义为抽象类
以使你在使用的时候,明显的提示你去实现一下,重写其中的部分方法
因为,对于不重写任何方法的一个Adapter类来说没有任何意义