接口成员的访问级别是默认的(默认为public),所以在声明时不能再为接口成员指定除public外的任何访问修饰符,否则 编译器会报错。
接口成员不能有static、abstract、override、virtual修饰符,使用new修饰符不会报错,但会给出警告说不需要关键字new。
接口成员不能有static、abstract、override、virtual修饰符,使用new修饰符不会报错,但会给出警告说不需要关键字new。
{
void f();
}
可是我就是public啊,我去掉了void也不行。 interface B
{
public void f();
}还是报错:
error CS0106: The modifier 'public' is not valid for this item
那么这个void默认的访问级别是public还是internal?
可是我就是public啊,我去掉了void也不行。 interface B
{
public void f();
}还是报错:
error CS0106: The modifier 'public' is not valid for this item
可是我就是public啊,我去掉了void也不行。 interface B
{
public void f();
}还是报错:
error CS0106: The modifier 'public' is not valid for this item去掉的应该是public,不是void。
那么这个void默认的访问级别是public还是internal?interface 不分级别。
在实现时再给。
那么这个void默认的访问级别是public还是internal?方法用全是public ,
接口修是符可以internal
{
interface B
{
void f();//这样改就行了,接口是不能用public与virtual的,这是语法的规定
}
class Program
{
static void Main(string[] args)
{
}
}
}
Interfaces (C# Programming Guide)
http://msdn.microsoft.com/en-us/library/ms173156.aspx