【unity开发】 C#接口使用小结(持续更新)

news/2024/9/24 18:06:00

C#的接口(interface)

早些时候我认识的接口仅仅只是作为一个方法签名来使用
但是随着学习的深入,就我感觉而言,我所认识的接口又越来越像一个抽象类了

1.最基本的使用

作为一个接口提供公共方法 用玩家的交互判断来举一个例子吧!


接口也支持使用泛型
再举一个手动实现拷贝方法的接口为例子

另外C#中,接口(interface)中的方法默认是public的。如果你不指定任何访问修饰符,接口中的方法隐式地是public。

2.接口上使用属性

不难猜到这个用法,毕竟CSharp属性的本质就是函数
可以理解成Java的Get和Set方法的上位替代
但是接口的属性还是得自己手动实现的
例如: public Name {get;set;} = "";
//如果Name属性在类里面将会自动生成一个隐藏字段供Name使用
//但是继承了接口里属性就得自己手动实现

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

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

相关文章

14-vertical-aligin

vertical-aligin01 行盒的理解 作用: 将当前行里的所有内容包裹起来 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0&…

6/17 死神永生服周报第五期

1.死神永生治理新闻 2.浅海公园[下] 3.死神永生TNT研究基地目录死神永生新闻 浅海公园[下] 死神永生服TNT军事基地[一]死神永生新闻前一周的治理新闻时间 人 行为 处罚方案6.14 Random748126323 火球炸服 踢+设为观察者浅海公园[下]死神永生服浅海生态公园已于6月12日建造完成,…

Goldeneye_v1靶场实操

本文章是对于来自詹士邦系列的电影——GoldenEye所命名的靶机的实操(如有错误,将及时修改)Goldeneye靶场实操 靶场信息下载靶机后用vm打开即可goldeneye靶机地址:https://www.vulnhub.com/entry/goldeneye-1,240/ 靶机发布日期:2018年5月4日 靶机描述:靶机命名来自詹士邦…

c语言程序实验————实验报告十三

c语言程序实验————实验报告十三实验项目名称: 实验报告十三 结构体运用程序设计 实验项目类型:验证性 实验日期:2024 年 5 月 30 日一、实验目的 1.掌握结构体类型变量的定义和使用 2.掌握结构体类型数组的概念和应用 3.掌握结构体类型指针的概念和应用 4.掌握共用体的概…

AWX+gitlab

目录AWX+gitlab1. Awx配置1.1 添加机构1.2 添加团队1.3 添加主机1.4 测试主机连通性2. 对接gitlab2.1 添加凭证2.2 添加项目2.3 上传playbook2.3.1 克隆仓库2.3.2 创建分支2.3.3 编写playbook并上传2.3.4 上传ansible.cfg(可选)2.3.5 创建作业模板2.4 测试 AWX+gitlab 我们可…

硬件开发笔记(二十一):外部搜索不到的元器件封装可尝试使用AD21软件的“ManufacturerPart Search”功能

前言这是一个AD的一个强大的新功能,能招到元器件的原理图、3D模型还有价格厂家,但是不一定都有,有了也不一定有其3D模型。ManufacturerPart Search在设计工具中选择即用型元件直接搜索,搜索到需要使用的元器件。在Altium Designer中,直接选中设备元件。无需使用第三方服务…

Unity 编辑器中获取选中的文件夹、文件路径

编辑器中获取选中的文件夹、文件路径 using UnityEditor; using UnityEngine; using Object = UnityEngine.Object;public class MyEditorScript {[MenuItem("Assets/PrintSelectedFolderPath")]static void PrintSelectedFolderPath(){// 第一种方式// 只能访问选中…

springcloud 不加载 bootstrap.yaml 问题

背景: 在 bootstrap.yaml 配置 nacos。但是怎么样都注册不上, 然后发现是没有加载 bootstrap.yaml 导致的。 最初以为是 springcloud 版本问题,折腾了1个小时才发现是模块的父工程里面配置的插件 spring-boot-maven-plugin 导致的。 具体如下图: