大家好,又见面了,我是你们的朋友全栈君。
java.lang.AbstractMethodError。通常,此错误是在编译时本身识别的,如果在运行时抛出此错误,则该类必须不兼容(与先前存在的类不兼容) )更改。因此,它是IncompatibleClassChange Error的子类。
在运行时如何抛出此错误?
二进制不兼容 –
这是什么意思?
“
此错误表明您调用的方法现在已转换为抽象方法”。
class B
{
public void display()
{
System.out.println("I am inside B");
}
}
import java.util.*;
public class A extends B
{
public static void main(String args[])
{
A a=new A();
a.display();
}
}
输出:
C:\blog>javac A.java
C:\blog>java A
I am inside B
现在,我将把display()方法转换为抽象方法,并单独进行编译。
abstract class B
{
public abstract void display();
}
输出:
C:\blog>javac A.java
C:\blog>java A
I am inside B
C:\blog>javac B.java
C:\blog>java A
Exception in thread "main" java.lang.AbstractMethodError: B.display()V
at A.display(A.java:3)
at A.main(A.java:8)
翻译自: https://www.javacodegeeks.com/2012/08/exception-java-lang-abstractmethoderror.html
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137037.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...