Java和C#接口的区别

Java接口中可以定义变量成员。如:

interface abc
{
    
int num=1;
}


可以编译通过。

而C#的接口中只能写函数原型。任何字段也不能包括。不管是否常量,静态变量。

我认为还是C#更规范些啊。接口中本来是不应该有任何实现的。如果需要用到常量,可以建立抽象类,抽象类实现这个接口,这样在抽象类中定义需要的字段就可以了。

P.S.一直不明白的还有为什么Java中的Protected访问修饰符可以被本包中非子类访问。有知道的朋友请一定告诉我,谢谢啦!

张旋(zxsoft)
如对本文有什么疑问,请在下面写下留言,谢谢!

原文地址:https://www.cnblogs.com/zxsoft/p/1209443.html