Unity之C#高级开发①

简介: Unity之C#高级开发①

命名空间


1.命名空间的设计目的是提供一种让一组名称与其他名称分隔开的方式。在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。

2.我们举一个计算机系统中的例子,一个文件夹(目录)中可以包含多个文件夹,每个文件夹中不能有相同的文件名,但不同文件夹中的文件可以重名。

3.简单理解:如下图:

image.png

命名空间的定义是以关键字 👉 Namespace

代码简单举例如下:

Interspace1脚本如 👇

usingUnityEngine;
publicclassInterspace1 : MonoBehaviour{
publicintAAPUsh=80;
}
namespaceAA{
publicclassInterspace1AA    {
publicintAAPUsh=80;
    }
}
namespaceAA.BB{
publicclassInterspace1BB    {
publicintBBPUsh=80;
    }
}
namespaceAA.BB.CC{
publicclassInterspace1CC    {
publicintCCPUsh=80;
    }
}

Interspace2 如👇

usingUnityEngine;
usingAA; //引入AA空间usingAA.BB; //引入AA.BB命名空间usingAA.BB.CC; //引入AA.BB.CC命名空间publicclassInterspace2 : MonoBehaviour{
privatevoidStart()
    {
//AAInterspace1AAinterspace1AA=newInterspace1AA();
Debug.Log("interspace1AA:"+interspace1AA.AAPUsh);
//BBInterspace1BBinterspace1BB=newInterspace1BB();
Debug.Log("interspace1BB:"+interspace1BB.BBPUsh);
//CCInterspace1CCinterspace1CC=newInterspace1CC();
Debug.Log("interspace1CC:"+interspace1CC.CCPUsh);
    }
}

打印如下:

image.png

异常处理


简单说明:异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。

异常基类 、命名空间 : System.Exception 👉 using System;

代码简单举例如下:

usingSystem;
usingUnityEngine;
publicclasstryCatchFinally : MonoBehaviour{
privateint[] ints=newint[] { 1, 5, 4, 5 };
privatevoidStart()
    {
//System.Exception 👉 异常的基类try//成功的执行        {
Debug.Log(ints[3]);
Debug.Log(ints[4]);
        }
catch (IndexOutOfRangeExceptionex) //错误捕获        {
Debug.Log("输入长度超出范围,请重新输入!");
        }
catch (NullReferenceExceptionex)
        {
Debug.Log("不能输入空值!");
        }
finally//成功或错误都会执行        {
Debug.Log("成功或失败都会执行!");
        }
    }
}

打印如下:

image.png

最后


本文到这里就结束了,觉得不错的请给我专栏点点订阅,你的支持是我们更新的动力,感谢大家的支持,希望这篇文章能帮到大家

image.png

下篇文章再见ヾ( ̄▽ ̄)ByeBye

image.png

相关文章
|
6月前
|
XML 测试技术 API
利用C#开发ONVIF客户端和集成RTSP播放功能
利用C#开发ONVIF客户端和集成RTSP播放功能
3814 123
|
5月前
|
人机交互 开发工具 vr&ar
使用Unity引擎开发Rokid主机应用的模型交互操作
本文介绍如何使用Unity引擎结合Rokid OpenXR Plugin开发空间计算应用,实现射线交互、模型操作等功能。涵盖环境配置、Demo导入、UI搭建与脚本编写,助力开发者快速构建AR交互应用。
|
9月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
498 18
|
物联网 数据处理 C#
C#实现上位机开发,串口通信,读写串口数据并处理16进制数据
C#实现上位机开发,串口通信,读写串口数据并处理16进制数据。在自动化、物联网以及工业控制行业中,上位机开发是一项重要的技能。本教程主要介绍使用C#进行上位机开发,重点在于串口通信和数据处理。
2559 82
|
前端开发 JavaScript 安全
C#一分钟浅谈:Blazor WebAssembly 开发
Blazor WebAssembly 是一个客户端框架,允许开发者使用C#和Razor语法构建Web应用。本文介绍了Blazor WebAssembly的基本概念、常见问题及解决方案,包括路由配置、数据绑定、异步操作、状态管理和性能优化等方面的内容,并分享了一些易错点及如何避免的方法。希望这些内容能帮助你在Blazor WebAssembly开发中少走弯路,提高开发效率。
506 51
|
11月前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
469 0
|
缓存 算法 安全
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
592 12
|
缓存 图形学
Unity C#for和foreach效率比较
该代码对比了三种遍历 `List<int>` 的方式的性能:使用缓存 `Count` 的 `for` 循环、每次访问 `list.Count` 的 `for` 循环以及 `foreach` 循环。通过 `Stopwatch` 测量每次遍历 300 万个元素所花费的时间,并输出结果。测试可在 Unity 环境中运行,按下空格键触发。结果显示,缓存 `Count` 的 `for` 循环性能最优,`foreach` 次之,而每次都访问 `list.Count` 的 `for` 循环最慢。
|
设计模式 C# 图形学
Unity 游戏引擎 C# 编程:一分钟浅谈
本文介绍了在 Unity 游戏开发中使用 C# 的基础知识和常见问题。从 `MonoBehavior` 类的基础用法,到变量和属性的管理,再到空引用异常、资源管理和性能优化等常见问题的解决方法。文章还探讨了单例模式、事件系统和数据持久化等高级话题,旨在帮助开发者避免常见错误,提升游戏开发效率。
630 4
|
缓存 C# 开发者
C# 一分钟浅谈:Blazor Server 端开发
本文介绍了 Blazor Server,一种基于 .NET 的 Web 开发模型,允许使用 C# 和 Razor 语法构建交互式 Web 应用。文章从基础概念、创建应用、常见问题及解决方案、易错点及避免方法等方面详细讲解,帮助开发者快速上手并提高开发效率。
449 2