Java 关于抽象类的两个概念让我感到困惑
我很困惑,因为我在书中发现了两个我认为不正确的概念。请帮我澄清这两点Java 关于抽象类的两个概念让我感到困惑,java,abstract,Java,Abstract,我很困惑,因为我在书中发现了两个我认为不正确的概念。请帮我澄清这两点 只要一个类有一个或多个抽象方法,这个类就是抽象的,即使它不是声明为抽象的(尽管强烈建议这样做)。这是正确的: class A { public abstract void f() ; // OK ..... } 然而,A被认为是抽象的,是一个表达式,例如new A(…) 将被拒绝 抽象方法必须声明为public,这是合乎逻辑的,因为它的目的是在子类中重新定义 第一点给了我一个错误,第二点是不必要的。我走对了吗
class A
{
public abstract void f() ; // OK
.....
}
然而,A被认为是抽象的,是一个表达式,例如new A(…)
将被拒绝abstract
类中声明abstract
方法受保护的或包本地抽象的方法
公共摘要
。定义接口时,指定以下任何修饰符都是多余的:
public interface Foo
{
/* public abstract is implied here */ void bar();
}
abstract
类中声明abstract
方法受保护的或包本地抽象的方法
公共摘要
。定义接口时,指定以下任何修饰符都是多余的:
public interface Foo
{
/* public abstract is implied here */ void bar();
}
这本书完全错了。我建议回收利用
abstract
方法的类abstract
public
——它可以是除private
这本书完全错了。我建议回收利用
abstract
方法的类abstract
public
——它可以是除private
这个问题似乎离题了,因为它是用法语提问的,而且这是一个纯英语的网站(我想)。第二个定义也是错误的。第二点也是错误的——它说抽象方法必须声明为公共的:它们可以声明除
private
之外的任何内容。两者都是错误的句子。它们是练习吗?这是我的翻译,@Jason,是的,我要编辑它。抱歉。这个问题似乎离题了,因为它是用法语问的,而且这是一个纯英语的网站(我想)。第二个定义也是错误的。第二点也是错误的——它说抽象方法必须声明为公共的:它们可以声明除私有
之外的任何内容。这两个都是错误的句子。它们是练习吗?这是我的翻译,@Jason,是的,我要编辑它。对不起,我很困惑,因为这本书是Eyrolles版的名著之一,作者是CLAUDE Delhave,我应该继续读还是停下来?我读了大约228页?我知道Delhave先生,我甚至有一两本他的书(我也是法国人),但这本书绝对是一本垃圾书(在法语中是“une merde”)。别管它!我想我会用英语找一本好书,你能给我推荐一本好书吗?这是书中写的抽象类的两条规则。我很困惑,因为这本书是Eyrolles版的名著之一,作者是CLAUDE Delhairt,我应该继续读下去还是停下来?我读了大约228页?我知道Delhave先生,我甚至有一两本他的书(我也是法国人),但这本书绝对是一本垃圾书(在法语中是“une merde”)。别管它!你喜欢这本书吗?谢谢,我想我会用英语找一本好书,你能给我推荐一本好的吗?这是书中写的两条抽象类规则。