前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C#-笔记-多态-接口-第四章

C#-笔记-多态-接口-第四章

作者头像
用户9857551
发布2022-06-28 08:39:21
1480
发布2022-06-28 08:39:21
举报
文章被收录于专栏:Angular学习规划

接口

接口是一种规范。 只要一个类继承了一个接口,这个类就必须实现这个接口的所有成员。

代码语言:javascript
复制
		public interface Iflayable {
            void Koulan();
        }
        public class Student : Person, Iflayable
        {
            public void Koulan()
            {
                Console.WriteLine("學生會學習");
            }
        }

为了多态,接口不能被实例化。 也就是说,接口不能new(不能创建对象);

接口中的成员不能加“访问修饰符”,接口中的成员的访问修饰符为public,不能修改。 (默认为public)接口中的成员不能有任何实现(光说不做,只是定义了一组未实现的成员);

代码语言:javascript
复制
public interface Iflayable {
            void Koulan();
        }

接口中只能有方法,属性,索引器,事件,不能有“字段”和构造函数。 接口接口之间可以继承并且可以多继承。 接口不能继承一个类,但是类可以继承接口,(接口只能继承于接口,而类可以继承接口,也可以继承类) 实现接口的子类必须实现该接口的全部成员。 一个类可以同时继承一个类并实现多个接口,如果一个类同时继承了父类A,并实现了接口IA,那么语法上A必须写在IA前边。 class.MyClass:A,IA{},因为类是单继承的。

代码语言:javascript
复制
		public class Person {

        }
        
        public interface Iflayable {

        }
        public class Student:Person,Iflayable
        {

        }

显示实现接口的目的,解决方法的重名问题 什么时候显示的去实现接口:有多相同名字的方法 当继承的接口中的方法和参数一摸一样的时候,要是用显示的实现接口

当一个抽象类实现接口的时候,需要子类去实现接口。

实现接口有两种

一、显示实现接口和隐式实现接口

1、实现接口过程中若有两个接口中的某成员有相同名字则需用显示实现来解决,显示实现接口的类不能直接调用继承于接口的成员,必须先转换才行。

2、 隐式实现接口,一般情况下就用隐式显示。不用转成接口再调用方法。

代码语言:javascript
复制
 		public class Student : Person, Iflayable
        {
            public void Koulan()
            {
                Console.WriteLine("學生會學習");
            }
        }
        public class Teacher : Person, Iflayable
        {
            void Iflayable.Koulan()
            {
                Console.WriteLine("老師教學生");
            }
        }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-12-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 接口
    • 一、显示实现接口和隐式实现接口
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档