文档章节

c#和Java中的接口

o
 osc_z1hvg4cu
发布于 2018/04/24 21:53
字数 521
阅读 0
收藏 0

精选30+云产品,助力企业轻松上云!>>>

使用场景:

在c#和Java中:

1.接口可以实现“多继承”(多实现),一个类只能继承自一个父类,但是可以实现多个接口。

2.接口解决了不同类型之间的多态问题,比如鱼与船不是同一类型,但是都能在水里“游泳”,只是方式不一样,要对“游泳”实现多态,就只能考虑接口。

c#中接口的使用语法:

 

public interface IFlyable
{
        //接口里面能包含什么成员,接口里面只能包含【方法】
        //方法、属性、索引器、事件  →  “方法”

        //接口中的所有成员,都不能显示的写任何访问修饰符
        //默认是public的访问修饰符
        void SayHi();
        void M1(string msg);

        //在接口中这样写表示是一个未实现的属性。
        string Name
        {
            get;
            set;
        }

        //索引器
        string this[int index]
        {
            get;
            set;
        }

        //事件
       event Action MyEvent;
}

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Java中接口的使用语法:

Java中接口要注意的事项 :
   1. 接口是一个特殊的类。
   2. 接口的成员变量默认的修饰符为: public static final 。那么也就是说接口中的成员变量都是常量。
   3. 接口中的方法都是抽象的方法,默认的修饰符为: public abstract。
   4. 接口不能创建对象。
   5. 接口是没有构造方法。
   6. 接口是给类去实现使用的,非抽象类实现一个接口的时候,必须要把接口中所有方法全部实现。

接口的定义格式:


  interface 接口名{

  }

实现接口的格式:

  class 类名 implements 接口名{

  }

 1 //普通的铅笔类
 2 class Pencil{
 3     
 4     String name;
 5 
 6     public Pencil(String name){
 7         this.name = name;
 8     }
 9 
10     public void write(){
11         System.out.println(name+"沙沙的写...");
12     }
13 }
14 
15 
16 //橡皮接口
17 interface Eraser{
18     public void remove();
19 }
20 
21 
22 //带橡皮的铅笔
23 class PencilWithEraser extends Pencil implements Eraser {
24 
25     public PencilWithEraser(String name){
26         super(name);
27     }
28 
29 
30     public void remove(){
31         System.out.println("涂改,涂改....");
32     }
33 }
34 
35 
36 class Demo
37 {
38     public static void main(String[] args) 
39     {
40         PencilWithEraser p = new PencilWithEraser("2B铅笔");
41         p.write();
42         p.remove();
43     }
44 }

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。

暂无文章

物联网开发服务开发虚拟设备需要几步?

云栖号快速入门:【点击查看更多云产品快速入门】 不知道怎么入门?这里分分钟解决新手入门等基础问题,可快速完成产品配置操作! 物联网平台设备的正常开发流程是:设备端开发完成,设备上报...

osc_2axit9df
19分钟前
18
0
互联网互联网必看文章墙裂推荐

后端必看文章系列 大型项目架构演进过程及思考的点

code-ortaerc
20分钟前
14
0
ACL2020论文整理 - 知乎

ACL2020录取文章已经放出,链接如下: ACL2020论文集合 www.aclweb.org 为了以后更加方便地阅读论文,也本着一颗开源之心,花一个下午的时间整理了一下相关论文。鉴于本人精力有限,并且也只...

osc_5w65ebjo
20分钟前
7
0
SU(N) Hubbard 模型平均场

osc_31d5oo2i
22分钟前
18
0
Python语言及其应用PDF高清完整版百度云盘免费下载|python基础教程PDF电子书推荐

编辑推荐 本书内容易于理解,而且读起来生动有趣,是编程和Python初学者不可多得的教程。书中首先介绍了Python的基础知识,然后逐渐深入多种主题,结合教程和攻略式风格来讲解Python 3中的概...

osc_nbg2lo7i
23分钟前
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部