题目
abstract class Name (private String name;public abstract boolean isStupidName(String name) {)}大侠们,这有何错误?
abstract class Name {
private String name;
public abstract boolean isStupidName(String name) {}
}
大侠们,这有何错误?
题目解答
答案
错。abstract method必须以分号结尾,且不带花括号。
解析
步骤 1:识别问题
问题在于抽象方法的定义。抽象方法是不能有方法体的,即不能有花括号 `{}` 包围的代码块。
步骤 2:分析错误
在给定的代码中,`public abstract boolean isStupidName(String name) {}` 这一行定义了一个抽象方法,但是它后面跟着一个花括号 `{}`,这违反了抽象方法的定义规则。
步骤 3:给出正确形式
抽象方法的正确形式应该是 `public abstract boolean isStupidName(String name);`,即方法签名后面跟着一个分号 `;`,而不是花括号 `{}`。
问题在于抽象方法的定义。抽象方法是不能有方法体的,即不能有花括号 `{}` 包围的代码块。
步骤 2:分析错误
在给定的代码中,`public abstract boolean isStupidName(String name) {}` 这一行定义了一个抽象方法,但是它后面跟着一个花括号 `{}`,这违反了抽象方法的定义规则。
步骤 3:给出正确形式
抽象方法的正确形式应该是 `public abstract boolean isStupidName(String name);`,即方法签名后面跟着一个分号 `;`,而不是花括号 `{}`。