C# 抽象方法的返回类型
实际上,我并没有太多地处理抽象方法,但我正在研究抽象类中的抽象方法C# 抽象方法的返回类型,c#,abstract-class,abstract-methods,C#,Abstract Class,Abstract Methods,实际上,我并没有太多地处理抽象方法,但我正在研究抽象类中的抽象方法 protected abstract bool Validate() { } 当我创建上面的类时,我得到一个错误,告诉我需要按照普通方法指定返回类型。这是正确的还是我做错了什么?如果您声明了抽象方法,那么您不应该给出body protected abstract bool Validate(); 如果不是抽象方法声明,而是给出了抽象方法的实现,那么应该使用method方法的return语句返回bool
protected abstract bool Validate()
{
}
当我创建上面的类时,我得到一个错误,告诉我需要按照普通方法指定返回类型。这是正确的还是我做错了什么?如果您声明了抽象方法,那么您不应该给出body
protected abstract bool Validate();
如果不是抽象方法声明,而是给出了抽象方法的实现,那么应该使用method方法的return语句返回bool,以满足declaration中的返回类型
protected abstract bool Validate()
{
//The method code
return false;
}
抽象方法声明引入了一个新的虚拟方法,但是
不提供该方法的实现。相反
非抽象派生类需要提供自己的
通过重写该方法实现。因为这是一种抽象的方法
不提供实际实现,即抽象的方法体
方法仅由分号组成
如果您声明了抽象方法,那么不应该给出body
protected abstract bool Validate();
如果不是抽象方法声明,而是给出了抽象方法的实现,那么应该使用method方法的return语句返回bool,以满足declaration中的返回类型
protected abstract bool Validate()
{
//The method code
return false;
}
抽象方法声明引入了一个新的虚拟方法,但是
不提供该方法的实现。相反
非抽象派生类需要提供自己的
通过重写该方法实现。因为这是一种抽象的方法
不提供实际实现,即抽象的方法体
方法仅由分号组成
抽象方法不应该有主体。它由派生类来实现该方法
protected abstract bool Validate();
抽象方法不应该有主体。它由派生类来实现该方法
protected abstract bool Validate();
请查看文档: 在方法或属性声明中使用抽象修饰符,以指示该方法或属性不包含实现。 抽象方法具有以下特点: 抽象方法隐式地是虚拟方法。 抽象方法声明只允许在抽象类中使用。 因为抽象方法声明没有提供实际的实现,所以没有方法体;方法声明仅以分号结尾,签名后没有大括号{}
请查看文档: 在方法或属性声明中使用抽象修饰符,以指示该方法或属性不包含实现。 抽象方法具有以下特点: 抽象方法隐式地是虚拟方法。 抽象方法声明只允许在抽象类中使用。 因为抽象方法声明没有提供实际的实现,所以没有方法体;方法声明仅以分号结尾,签名后没有大括号{}
在C中,抽象方法没有实现,因此您的代码应该如下所示:
//no { and } in there
protected abstract bool Validate();
您不能创建抽象类的实例,您应该创建从抽象类派生的另一个类,并在该新类中实现此方法。在C中,抽象方法没有实现,因此您的代码应该如下所示:
//no { and } in there
protected abstract bool Validate();
您不能创建抽象类的实例,您应该创建从您的抽象类派生的另一个类,并在该新类中实现此方法。因为其他提到的抽象方法没有实体。 它们没有的原因是类不能有实例。这意味着你永远不会有抽象类的对象。
您必须扩展抽象类并在具体类中实现body,因为其他提到的抽象方法没有body。 它们没有的原因是类不能有实例。这意味着你永远不会有抽象类的对象。
您必须扩展抽象类并在具体类中实现body。我很惊讶一对花括号能让你偏离正轨,明白了吗。我很惊讶一对花括号能让你偏离正轨。