Java 无法实例化抽象类
我无法实例化Java 无法实例化抽象类,java,oop,instantiation,Java,Oop,Instantiation,我无法实例化GuitarAbstract类 错误: package InterfaceAbstractOverloadingOverriding; public class instrumentExecute { public static void main(String[] args) { GuitarAbstract g = new GuitarAbstract(); NewGuitar ng = new NewGuitar();
GuitarAbstract
类
错误:
package InterfaceAbstractOverloadingOverriding;
public class instrumentExecute
{
public static void main(String[] args)
{
GuitarAbstract g = new GuitarAbstract();
NewGuitar ng = new NewGuitar();
g.play();
ng.play();
g = new GuitarAbstract(7);
ng = new NewGuitar(5);
g.play();
ng.play();
}
}
不能直接实例化抽象类,但可以为抽象类实例化 例如,给定以下抽象类:
Cannot instantiate the type GuitarAbstract.GuitarAbstract is an abstract class.
您可以创建一个匿名类,如下所示:
class GuitarAbstract {
public abstract void play();
}
不能直接实例化抽象类:因为它是一个抽象类。您需要创建从该类继承的具体内容,以便能够实例化某些内容。请遵循java命名约定。包应全部为小写,另一方面,类应为驼峰大小写(InstrumentExecute)。
GuitarAbstract guitar = new GuitarAbstract() {
@Override
public void play() {
System.out.println("Playing guitar!");
}
};