首页 > Java > Java基础 > 正文

c#接口与java接口的区别

王林
发布: 2019-11-19 14:45:15
原创
4102 人浏览过

c#接口与java接口的区别

1、接口中定义成员

C#,如图我在接口ITest添加了一个字段n,那么vs直接就显示红色的底线,而错误就是接口不能包含字段

7561821def1c25e5ccd7e7af4bf0c2b.png

java,如下图,编译也是报错但是并不是接口中不能包含而是缺少赋值,那么我们赋值一下再看。可以看到没有问题,也就是成员变量默认是public static final,我们知道final必须是需要赋值的,所以不赋值会编译处所。

b3f5e4e2bb7494006a106cd513d4fb1.png

经过赋值后,发现没有问题,如下图:

0d30babbb9904742d92743bb0148cb4.png

2、接口中定义一些方法

C#,我们都知道在一个接口中的方法都是需要子类去实现的,那么我们在接口中的方法是不能有实现的,如果添加了实现就会有错误。错误就是接口不能有定义。

0d93376554b54c6e0034737a1e96003.png

java中也就是jdk1.8添加了一些可以实现的方法。default,static中就可以有实现。如下图,编译没有问题。那么c#有默认和静态的方法吗?在接口中,很抱歉没有。

96d1e2db50dcaa6f2efd19d4b7c9acd.png

c#中是没有的,对static,default的接口方法是不能定义的。因为无效。

49fb410a055ba2164f9a0d11875e628.png

总结:

1、在java中,接口可以包含字段,但这些字段隐式地是static和final的,而C#不允许接口中有字段,编译器在编译时就会提示错误;

2、在Java中,方法声明可以带有public修饰符(即使这并非必要),但在C#中,显式地为接口中的方法指定public修饰符是非法的。

推荐教程:java开发入门

以上是c#接口与java接口的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!