C#接口的实现与继承 1.接口//接口是指定一组成员而不对他们的成员进行实现的引用类型只能被类和结构体所实现当类或结构体去继承这个接口的时候必须实现接口中定义的所有成员//接口只作属性、行为规范不具备存储数据和定义方法的能力//接口制定规则应该有什么//类或结构体实现接口的指定规则具体怎么有//定义一个接口用interface关键字行业规范一般用大写字母I开头命名//格式interface 接口的名字{ }interfaceIBook{//接口中所有成员隐式public不能主动写访问修饰符//属性声明stringName {get;set; }doublePrice {get;set; }//方法声明voidFn();voidFn2(strings);//接口中不能写字段和静态成员//int a;报错//static int b { get; set; }报错//static void fn3();报错}//某个类或结构体实现接口必须实现这个接口的所有成员//一个类可以继承多个接口classBook:IBook,IPaper{//实现的类或结构体中可以拥有更多的成员}//一个类可以继承另一个类的同时去实现接口classStudent:Person,IStudent{}//当父类有和子类的接口同名的属性时子类可以不需要自己实现也可以通过new关键字重新实现接口只是定义类是实现1.接口中只能定义属性、方法不能定义字段和静态成员2.接口的修饰符默认public不能手写3.类或结构体实现接口时成员只能多不能少如果接口中规定的属性有get,set实现的时候就必须有get,set接口规定的只有get实现时可以有get或get和set4.类可以实现多个接口用,分隔5.当类同时继承父类和实现接口时必须把类放在最前面2.多接口实现//当一个类实现多接口中拥有相同类型的相同属性的声明时只需要实现一次//当一个类实现多接口中拥有不同类型的相同属性的声明需要使用显式接口去实现//显式实现的成员不需要加访问修饰符classTest:IA,IB{intIA.D {get;set; } 123;stringIB.D {get;set; } 张三;publicvoidFn(){//如果同名同参的方法方法体也一样只实现一次//如果同名同参的方法方法体不一样像属性一样显示接口去实现void IA.Fn(){} void IB.Fn(){}}//因为方法可以重载因此可以直接重载两个接口中同名的不同方法publicvoidFn1(intx){}publicvoidFn1(stringx){}Testt newTest();Console.WriteLine(t.D);//True//显式接口成员只能通过接口类型引用访问不能用类对象IAa t;Console.WriteLine(a.D);//123IBb t;Console.WriteLine(b.D);//张三3.接口的继承//一个接口可以继承另一个接口如果接口B继承了接口A某个类实现接口B时要同时实现A和B的所有成员抽象类和接口异同相同点1.抽象类和接口都不能被new创建实例2.都包含未实现的方法(可以声明方法而不提供实现)不同点1.抽象类可以包含非抽象的成员接口只能包含抽象成员2.抽象类只支持单继承一个类一次可以实现多个接口3.抽象类可以有访问修饰符接口不能有访问修饰符4.抽象类可以有字段接口不能定义字段

相关新闻

最新新闻

ARM Cortex-M 嵌入式开发与 RTOS 实践:本地环境怎样一次跑通

ARM Cortex-M 嵌入式开发与 RTOS 实践:本地环境怎样一次跑通

ARM Cortex-M 嵌入式开发与 RTOS 实践:本地环境怎样一次跑通 “在我机器上能编译跑通,怎么换到你的电脑上烧录就挂了?”——这是嵌入式团队开发中高频出现的对话。 依赖物理开发板和盗版仿真器驱动的传统开发模式,存在严重的局限性…

2026/8/11 3:39:31
如何在Windows上快速解决苹果HEIF图片查看与转换难题

如何在Windows上快速解决苹果HEIF图片查看与转换难题

如何在Windows上快速解决苹果HEIF图片查看与转换难题 【免费下载链接】HEIF-Utility HEIF Utility - View/Convert Apple HEIF images on Windows. 项目地址: https://gitcode.com/gh_mirrors/he/HEIF-Utility 你是否曾在Windows电脑上收到iPhone拍摄的照片,…

2026/8/11 3:39:31
WPS PDF编辑器专业版2024

WPS PDF编辑器专业版2024

链接:https://pan.quark.cn/s/61ec55712d0cWPS PDF 编辑器支持 PDF 编辑/浏览/页面/批注/加密/签名/转 Word/转 Excel/转 PPT/转图片/转 TXT/提取文字等。 内置序列号,无需激活,绿色无广告。

2026/8/11 3:39:31
GitHubDesktop2Chinese:3分钟快速汉化GitHub桌面客户端的完整教程

GitHubDesktop2Chinese:3分钟快速汉化GitHub桌面客户端的完整教程

GitHubDesktop2Chinese:3分钟快速汉化GitHub桌面客户端的完整教程 【免费下载链接】GitHubDesktop2Chinese GithubDesktop语言本地化(汉化)工具 【GitHub桌面客户端中文汉化】 项目地址: https://gitcode.com/gh_mirrors/gi/GitHubDesktop2Chinese 还在为Git…

2026/8/11 3:39:31
从单Agent到多Agent编排:AI驱动3D建模的架构演进与30%准确率提升实践

从单Agent到多Agent编排:AI驱动3D建模的架构演进与30%准确率提升实践

1. 从单Agent到多Agent:我们为何要“放弃”?在AI驱动的3D建模领域,单Agent方案曾是我们的起点,也是很多团队的舒适区。一个模型,一个任务,逻辑清晰,调试简单。我们早期的HiCAD 2.0版本就是典型的…

2026/8/11 3:39:31
大模型接入调查岗位匹配度

大模型接入调查岗位匹配度

计算岗位匹配度 job_router.get(“/resume_submission_detail/{id}”, summary“简历投递详情”) async def resume_submission_detail(id:int): resawait JobService.resume_submission_detail(id) return { “code”: 1, “message”: “查询成功”, “data”: json.loads(re…

2026/8/11 3:34:31