不太明白你的意思,不过觉得没有问题,比如:
abstract class a
{
public abstract void fa();
public virtual void fb() { }
}
abstract class b : a
{
public override void fa()
{ } public new void fb()
{
}
}
abstract class a
{
public abstract void fa();
public virtual void fb() { }
}
abstract class b : a
{
public override void fa()
{ } public new void fb()
{
}
}
class b
{
public virtual void fb()
{
//doing something
}
}
abstract class a : b
{
public abstract override void fb();
}
这样有问题吗?
{
public virtual void sub_a()
{
} public void sub_b()
{ }
} abstract class class_b : class_a
{
public override void sub_a()
{
} public new void sub_b()
{
}
}这样也可以的,不过从一般类派生抽象类不符合逻辑呀~
{
public virtual void sub_a()
{
} public void sub_b()
{
console.writeline("this is class_a");
}
} abstract class class_b : class_a
{
public override void sub_a()
{
}
}
class class_c:class_b
{ }
class Program
{
static void Main(string[] args)
{
class_c obj = new class_c();
obj.sub_a();
obj.sub_b();
Console.Read();
}
}运行后照样可以,输出 "this is class_a"