若抽象类没有抽象方法要怎么继承?
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类来说没有任何意义