我可以在Java中定义一个抽象方法而不使用抽象关键字吗?
我知道我们只能在抽象类中定义抽象方法。我还知道我们不能单独实例化抽象类,它必须被继承(扩展)。我知道抽象方法迫使子类为该方法提供实现 我的问题是,如果我可以定义抽象方法而不使用“abstract”关键字?比如:我可以在Java中定义一个抽象方法而不使用抽象关键字吗?,java,inheritance,syntax,Java,Inheritance,Syntax,我知道我们只能在抽象类中定义抽象方法。我还知道我们不能单独实例化抽象类,它必须被继承(扩展)。我知道抽象方法迫使子类为该方法提供实现 我的问题是,如果我可以定义抽象方法而不使用“abstract”关键字?比如: public abstract Animal { public void makeNoise(); } 您可以创建一个接口,它是一组抽象方法,无需使用抽象关键字。如果创建一个抽象类,那么每个抽象方法都应该有抽象关键字 查看以了解更多信息。您可以创建一个界面,这是一组抽象方法,
public abstract Animal
{
public void makeNoise();
}
您可以创建一个
接口
,它是一组抽象方法,无需使用抽象
关键字。如果创建一个抽象类
,那么每个抽象方法都应该有抽象
关键字
查看以了解更多信息。您可以创建一个
界面
,这是一组抽象方法,无需使用抽象
关键字。如果创建一个抽象类
,那么每个抽象方法都应该有抽象
关键字
查看以了解更多信息。我的问题是,只有在不使用“abstract”关键字的情况下,我才能定义该抽象方法?
不,你不能上课。只有在接口上才可能这样做。我的问题是,只有在不使用“abstract”关键字的情况下,我才能定义抽象方法?
不,你不能上课。这只能在接口上实现
我的问题是,只有当我能够在没有
“抽象”关键字
您不能这样定义抽象方法。抽象类可以包含方法的实现。因此,您必须标记哪个方法是抽象的,哪个不是 如果你创建了动物类
public abstract class Animal {
public void makeNoise();
}
Eclipse将建议您添加body或将方法更改为abstract
我的问题是,只有当我能够在没有
“抽象”关键字
您不能这样定义抽象方法。抽象类可以包含方法的实现。因此,您必须标记哪个方法是抽象的,哪个不是 如果你创建了动物类
public abstract class Animal {
public void makeNoise();
}
Eclipse将建议您添加body或将方法更改为abstract。“我知道我们只能在抽象类中定义抽象方法。”这是不正确的。所有非默认的接口方法都是公共和抽象的,不使用
abstract
关键字。您的Animal
类还是接口?请为您没有提出问题的地方编写适当的Java语法。“我知道抽象方法迫使子类为该方法提供实现”,这只适用于非抽象子类。抽象子类甚至可以添加更多的抽象方法,但仍然不能实现继承的抽象方法。“我知道我们只能在抽象类中定义抽象方法。”这是不对的。所有非默认的接口方法都是公共和抽象的,不使用abstract
关键字。您的Animal
类还是接口?请为您没有提出问题的地方编写适当的Java语法。“我知道抽象方法迫使子类为该方法提供实现”,这只适用于非抽象子类。抽象子类甚至可以添加更多的抽象方法,但仍然不能实现继承的抽象方法。