C# 通俗讲解Public、Private以及Protected、[HideInInspector]、[SerializeField]的区别

一、故事背景

1.我画了一幅画,把它放在室外,所有人都可以看见这个画,所有人都可以对这个画进行修改。

2.我非常非常努力,赚了一大笔钱,这笔钱,只能我和我的子孙后代用,但如果我的孩子需要传给他们的孩子,也可以用。

3.我娶了一个媳妇,她只是我的,不能给别人,也不能被自己的孩子继承(不要杠,杠就是你是对的!)

以上三种情况,我们在代码里也会遇见。


二、Public、Protected以及Private

如果我在一个代码里写了public int apple;

那么,这个apple是其他代码也可以调用到的,甚至可以更改。

如果我在一个代码里写了protected int apple

那么,这个apple只能被现在这个代码和继承了自己的代码使用和更改。

如果我在一个代码里写了Private int apple

那么,这个apple只能被现在这个代码使用和更改。

三、unity面板里的Public、Protected以及Private

如果你是在unity里写的,public和其他俩还有一个重要的区别,就是public是可以在面板里被看见的,其他两个不可以。

四、[HideInInspector]、[SerializeField]的区别

在上一条的情况下,我们在Unity里面使用,会出现新的需求:

1.(public)我还是愿意让所有代码都调用到,都可以修改,可是,我不想再面板上看见它。那就在代码上面加上[HideInInspector],意思是,在面板中隐藏

    [HideInInspector]public int apple = 10;

2.(Protected、Private)其他功能我想保持不变,可我希望能在面板上看见,在面板上改动它。

那就在代码上面加上[SerializeField],意思是,在面板中显示并可以操作

    [SerializeField]protected int apple2 = 10;[SerializeField]private int apple3 = 10;

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

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

相关文章

jmap命令的实现原理解析

jmap可以做什么? 1、jmap -histo[:live] 通过histo选项,打印当前java堆中各个对象的数量、大小。 如果添加了live,只会打印活跃的对象。 2、jmap -dump:[live,]formatb,file 通过-dump选项,把java堆中的对象dump到本地文件&a…

leaflet使用热力图报L找不到的问题ReferenceError: L is not defined at leaflet-heat.js:11:3

1.在main.js中直接引入会显示找不到L 2.解决办法 直接在组件中单独引入使用 可以直接显示出来。 至于为什么main中不能引入为全局,我是没找到,我的另外一个项目可以,新项目不行,不知哪里设置的问题

【小聆送书第二期】人工智能时代AIGC重塑教育

🌈个人主页:聆风吟 🔥系列专栏:网络奇遇记、数据结构 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 📋正文📝活动参与规则 参与活动方式文末详见。 📋正文 AI正迅猛地…

【技巧】导出和导入Typecho的文章数据

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 背景介绍 1、要换服务器了,虽然Typecho和Theme都可以重装,但文章数据由于是存在数据库里的,所以需要额外一些操作才行。 2、在进行下面的数据导入导出之前,新服务器…

GitHub Copilot - Elasticsearch 和 MySQL 单表查询耗时比对

当单表数据库超过百万后,数据库 like %xxx% 查询明显变慢,为了对比 Elasticsearch 的效果,将百万级的测试数据导入到 Elasticsearch 中对比看看效果。导入和查询 Elasticsearch 的过程完全通过 GitHub Copilot Chat 辅助编码。 Elasticsearc…

3.0 kVrms电压隔离: ADUM162N0BRZ、ADUM163N1BRZ、ADUM1281CRZ、ADUM1285CRZ通用多通道隔离(数字隔离器)

一、ADUM162N、ADuM163N 集成故障安全和2、3个反向通道的鲁棒3.0 kV rms六通道数字隔离器 ADuM162N / ADuM163N 均为采用ADI公司iCoupler技术的6通道数字隔离器。这些隔离器件将高速、互补金属氧化物半导体(CMOS)与单芯片空芯变压器技术融为一体,具有优于光耦合器件…

源代码泄密困扰企业?上海迅软DSE助力解决问题

源代码是软件开发最重要的资源,同时也是开发人员思想、经验和工作的结晶。对于软件开发企业来说,实施有效的源代码防泄密措施至关重要,因为源代码文档和程序文档都具有极高的商业价值,属于企业的商业机密。 为了确保企业的源代码…

Java_Mybatis_缓存

缓存 1.概述 Mybatis 缓存:MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制 2.会话缓存(一级缓存) sqlSession 级别的,也就是说,使用同一个 sqlSession 查询同一 sql 时&#x…

YOLOv7独家原创改进:SPPF自研创新 | SPPF创新结构,重新设计全局平均池化层和全局最大池化层,增强全局视角信息和不同尺度大小的特征

💡💡💡本文原创自研创新改进:SPPF_improve利用全局平均池化层和全局最大池化层,加入一些全局背景信息和边缘信息,从而获取全局视角信息并减轻不同尺度大小所带来的影响 强烈推荐,适合直接使用,paper创新基本 💡💡💡 在多个数据集验证涨点,尤其对存在多个尺…

大模型的研究新方向:混合专家模型(MoE)

大模型的发展已经到了一个瓶颈期,包括被业内所诟病的罔顾事实而产生的“幻觉”问题、深层次的逻辑理解能力、数学推理能力等,想要解决这些问题就不得不继续增加模型的复杂度。随着不同应用场景的实际需求,大模型的参数会变得越来越大&#xf…

npm安装,idea中启动vue失败

node 设置配置之后,要查询时,会从.npmrc中读取路径 .npmrc自己创建的(默认情况下.npmrc会创建在C盘中) 我创建的在D:\studay-and-working\node16.14\node_modules\npm中 指定.npmrc文件,因为默认会访问C盘的.npmrc文件…

Docker 安装Apache Superset 并实现汉化和快速入门

什么是Apache Superset Apache Superset是一个现代化的企业级商业智能Web应用程序。Apache Superset 支持用户的各种数据类型可视化和数据分析,支持简单图饼图到复杂的地理空间图表。Apache Superset 是一个轻量级、简单化、直观化、可配置的BI 框架。 Docker 安…

【报错栏】(vue)Module not found: Error: Can‘t resolve ‘element-ui‘ in xxx

Module not found: Error: Cant resolve element-ui in xxx 报错原因是: 未安装 element-ui 依赖 解决: npm install element-ui 运行

C语言 二叉树详解(自我理解版)!!!二叉树的实现

目录 1.树的概念和结构(了解) 1.1树的概念 1.2关于树的每个组成结构的叫法 1.3树的结构体表示 1.4树在实际中的运用 2.二叉树的概念和结构和实现(本期偏重点之一) 二叉树的概念 ​编辑 特殊的二叉树 1.完全二叉树 2.满二…

Unity 实现单例模式

目录 基本概念 饿汉模式(推荐) 懒汉模式: 基本概念 单例模式:类只有一个实例,一般使用static来实现单例模式; 比如:有一个Test类,实现了单例,假设这个唯一的实例名为SingTonle,实例在类内被实现并被stat…

MAX/MSP SDK学习09:重要示例1

本示例涉及到单个MSP对象同时使用Signal类型、Message类型的入口;代理入口的使用。 注意:MSP对象的入口默认为代理入口,因此Signal类型、Message类型的数据都可接收; #include "ext.h" #include "ext_obex.h&…

【FPGA图像处理实战】- 图像行缓存设计实现方式一(FIFO)

图像处理中稍复杂点的算法,就需要行缓存,以实现3*3窗口、6*6窗口的数据计算。 本文将介绍使用FIFO来实现图像行缓存的设计,包括关键逻辑分析,源代码实现分享。 一、行缓存功能的设计框架 图像数据一般都是按照从左到右,从上到下,一行行数据的方式发送传输的。 这里以…

机器学习三个基本要素:优化算法

在确定了训练集 D、假设空间 ℱ 以及学习准则后,如何找到最优的模型𝑓(x,θ∗) 就成了一个最优化(Optimization)问题。机器学习的训练过程其实就是最优化问题的求解过程。 参数与超参数 在机器学习中,优化又可以分为参…

mybatis查询结果resultMap映射vo源码分析

概述 mybatis是一个常用的持久层框架;通常搭配mysql使用; 在将查询结果映射成一个复杂vo的时候,通常会用到resultMap,在其中嵌套association和collection等操作;将一个复杂查询拆分成简单查询; 在vo中的变…

WSL 配置 Docker 内存和 CPU 资源限制

我用的电脑一共有40G内存,最近发现电脑重启后,VmmemWSL 进程很快就会占用一多半的内存(20G),电脑中有多个停止运行的容器,正常启动状态的只有一个 MySQL 服务,通过 docker stats 查看占用内存也…