c#入门-接口显式实现

news2024/11/25 10:37:21

接口显式实现

接口的显式实现主要解决两个问题

  1. 基类型隐式实现了一个接口成员。但是他的成员没有标记虚拟的,无法重写。
  2. 接口可以多继承,那么重名了怎么办

显式继承语法

interface I回血
{
	public void 回血();
}

显式继承时,不能写访问修饰符。因为这是接口的成员,不是你的成员。
在写成员名字时,写全是哪个接口,然后点出来成员名字。

class 猫里奥 : I回血
{
	public int Hp;

	void I回血.回血()
	{
		Hp++;
	}
}

显式实现的方法不是你的成员,你不能调用他们。
在这里插入图片描述
但是你可以把自己转为接口类型,通过接口变量调用。

class 猫里奥 : I回血
{
	public int Hp;

	void I回血.回血()
	{
		Hp++;
	}
	public void 睡觉()
	{
		((I回血)this).回血();
	}
}

实现接口的基接口成员

在接口继承时只是要求你同时实现基接口。而不是获得了基接口的成员。
所以类显式实现时指定的是基接口的名字。

interface I回魔
{
	public void 回魔();
}
interface I睡觉 : I回血, I回魔
{
}
class 探险王 : I睡觉
{
	public int Hp;
	public int MaxHp;
	public int Mp;
	public int MaxMp;
	void I回血.回血()
	{
		Hp = MaxHp;
	}
	void I回魔.回魔()
	{
		Mp = MaxMp;
	}
}

接口直接实现基接口

显式实现可以直接在接口中,实现基接口成员

interface I睡觉 : I回血, I回魔
{
	void I回魔.回魔()
	{
		Console.WriteLine("你没有法力值");
	}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/92900.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

团队新人多,稳定性经验不足,研发质量怎么保障?|TakinTalks论道

# 一分钟精华速览 #在研发和稳定性保障过程中,人与设备、程序、组织的交互是一个复杂的过程,虽然人们极少会恶意犯错,但由于受特定情景下的实际条件影响,人为失误也时有发生,那么,如何尽可能减少这些失误的…

Jenkins持续集成项目搭建与实践——基于Python Selenium自动化测试(自由风格)

📌 博客主页: 程序员二黑 📌 专注于软件测试领域相关技术实践和思考,持续分享自动化软件测试开发干货知识! 📌 公号同名,欢迎加入我的测试交流群,我们一起交流学习! 目录…

Linux无法访问本机mysql

问题描述:maven打包成jar包运行再linux中,数据库访问主机无法访问 可能问题: 目录 1.未修改mysql访问权限,修改user表,%表示任意ip 2.ip地址不对,需要找到ipV4的地址 3.导入jar包不对 4.打包成jar包插…

Mac 窗口管理分屏工具软件【Wins】

Wins,为 Mac 带来系统级的分屏功能,快速分屏,只需拖动窗口到屏幕边缘即可进行分屏操作。提供了分屏预览动画和触发分屏后的动画效果。 单设备永久使用,免费更新。仅需95 Wins 激活码:Wins - Mac 窗口管理分屏工具软…

HBM MM CDM Latch-Up

1、HBM(Human Body model):正常2000V JEDEC document JEP155 states that 500-V HBM allows safe manufacturing with a standard ESD control process。 HBM VS System ESD 2、MM(Machine Model),已经被J…

遥感测深方法综述(三)机载雷达测深系统关键参数

下面两张图分别是CZMIL Nova和SuperNova的技术参数,从图中可以看出,与最大探测深度有关的参数是Kd ,且标称的最大深度4.X/Kd要求底质反射率大于15%。 1、海底底质对测量的影响 在进行激光测深的时候,海底底质的反射率对测量结果将…

【C++】继承(万字详解) —— 切片 | 隐藏 | 子类的默认成员函数 | 菱形继承

🌈欢迎来到C专栏~~继承 (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是Scort目前状态:大三非科班啃C中🌍博客主页:张小姐的猫~江湖背景快上车🚘,握好方向盘跟我有一起打天下嘞!送给自己的一句鸡汤&#x1…

力扣 1945. 字符串转化后的各位数字之和

题目 给你一个由小写字母组成的字符串 s ,以及一个整数 k 。 首先,用字母在字母表中的位置替换该字母,将 s 转化 为一个整数(也就是,‘a’ 用 1 替换,‘b’ 用 2 替换,… ‘z’ 用 26 替换&am…

华为二面,原来是我对自动化测试的理解太肤浅了..

如何使用Python实现自动化测试 如果你入职一家新的公司,领导让你开展自动化测试,作为一个新人,你肯定会手忙脚乱,你会如何落地自动化测试呢?资深测试架构师沉醉将告诉你如何落地自动kan化测试,本次话题主要…

ChatGPT+Midjourney实现儿童绘本故事及其插图(数字1~10的故事)

一、背景 近期AI对话技术与AI绘画技术突飞猛进。其中1.)AI对话技术是指用于模拟人类语言交流的人工智能技术。它可以让机器通过自然语言文本或语音与人类进行交流,并能理解人类的话语内容并做出相应的回应。对话技术在语音助手、智能客服、智能创作等领域…

Android核心基础总结——小菜爱教程

-0基础学习路线 Java基础 设计模式 Linux基础 数据库 网络协议 Android基础 服务器端开发 然后就是环境搭建、activity、intent、Android基础、基础应用开发。如阶梯图: 核心基础进阶 1、泛型、注解 2、动态编程技术 3、虚拟机 4、虚拟机垃圾回收 5、类与对象…

忘掉Xavier初始化吧!最强初始化方法ZerO来了

文 | 小戏谈及最典型的深度学习模型的训练,脑海里浮现的格式化的套路是什么?给定一个问题,给定一个数据集,弯弯绕绕确定好选择的神经网络的架构,然后上手调参,接下来的工作彷佛像是固定的重复工作&#xff…

AD20和立创EDA设计(3)微调原理图和原理图检查

(1)本文主要介绍如何将从立创EDA导出的原理图在AD20进行调整。 (2)需提前观看:AD20和立创EDA设计(2)提取立创EDA的原理图库和PCB库; (3)邀请加入嵌入式社区&a…

英语学习词根词缀总结

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站 点击跳转浏览。 目录 一.联想法 二.词根词缀法 索引 高频词根A-B系列 1.ab/abs- 表示远离,或否定 2.ac-/acr- 表示尖,酸&#x…

CSS基础总结(二)

文章目录 一、CSS复合选择器 1.后代选择器 2.子选择器 3.并集选择器 4.伪类选择器 复合选择器总结 二、CSS元素显示模式 1.概述 2.块元素 3.行内元素 4.行内块元素 5.元素显示模式的转换 元素显示模式总结 三、CSS背景 1.概述 2.背景图片 3.背景平铺 4.背景图片位…

[Android移动安全渗透基础教程] 易受攻击的移动应用程序

也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大 少走了弯路,也就错过了风景,无论如何,感谢经历 0x01 如何设置 GoatDroid (FourGoats) 1.1 简介(概述&#…

【014】基于Vue.js的移动端购物商城网站(含源码、课设报告)

文章目录一、项目介绍二、代码及报告获取一、项目介绍 基于Vue.js的移动端购物商城网站(含源码、课设报告),代码获取放在文末了,码字不易,感谢点赞~ 一、系统概述 本部分主要是对项目进行简要描述,包括开发背景、目的、内容及意…

用C++如何进行判断

📒博客主页: ​​开心档博客主页​​ 🎉欢迎关注🔎点赞👍收藏⭐留言📝 📌本文由开心档原创! 📆51CTO首发时间:🌴2022年12月12日🌴 ✉…

5个可保存的在线代码片段平台推荐-变成自己的代码词典库

文章目录1、谷歌等现代浏览器自带的代码片段2、github、gitee、gitcode等在线托管平台的gist列表3、各大在线IDE平台4、掘金代码片段5、在线笔记1、谷歌等现代浏览器自带的代码片段 路径:浏览器开发者工具->源代码->代码段 可以新建很多代码段,在…

深度Linux 居家办公 内网穿透 ssh反向映射 访问公司办公内网 局域网的一个简单方案 + vnc图形界面

1. 公网服务器 自行参考以下项目: x86_64: Docker arm64: Docker 2. 处于内网的办公机器 2.1 vpn客户端 BIOS配置定时开机(一般在电源选项或者唤醒设置里) 安装vpn客户端,配置好证书 配置开机自动,参考配置 /usr/…