Unity3D面试题整合——第一部分及答案

本文整理了Unity3D面试中常见的34道基础概念题目,涵盖值类型与引用类型、ArrayList与List的区别、垃圾回收、接口与抽象类、Unity3D脚本语言、多线程限制、协程与线程差异、Transform组件、四元数应用、向量操作等核心知识点。详细解答帮助开发者巩固基础,提升面试表现。
摘要由CSDN通过智能技术生成

第一部分

1.请简述值类型与引用类型的区别

2.C# 中所有引用类型的基类是什么

3.请简述 ArrayList 和 List 的主要区别

4.请简述 GC (垃圾回收)产生的原因,并描述如何避免?

5.请描述 Interface 与抽象类之间的不同

6.下列代码在运行中会产生几个临时对象?

7.下列代码在运行中会发生什么问题?如何避免?

8.请简述关键字 Sealed 用在类声明和函数声明时的作用

9.请简述 private , public , protected , internal 的区别

10.反射的实现原理?

11..Net 与 Mono 的关系?

12.简述 Unity3D 支持的作为脚本的语言的名称

13.Unity3D 是否支持写成多线程程序?如果支持的话需要注意什么?

14.Unity3D 的协程和 C# 线程之间的区别是什么?

15.U3D 中用于记录节点空间几何信息的组件名称,及其父类名称

16.简述四元数的作用,四元数对欧拉角的优点?

17.向量的点乘、叉乘以及归一化的意义?

18.矩阵相乘的意义及注意点

19.为何大家都在移动设备上寻求 U3D 原生 GUI 的替代方案

20.请简述如何在不同分辨率下保持 UI 的一致性

21.为什么 dynamic font 在 unicode 环境下优于 static font

22.Render 的作用?描述 MeshRender 和 SkinnedMeshRender 的关系与不同

23.简述 SkinnedMesh 的实现原理

24.在场景中放置多个 Camera 并同时处于活动状态会发生什么?

25.Prefab 的作用?如何在移动环境的设备下恰当地使用它?

26.如何销毁一个 UnityEngine.Object 及其子类

27.为什么 Unity3D 中会发生在组件上出现数据丢失的情况?

28.如何安全的在不同工程间安全地迁移 asset 数据?三种方法

29.MeshCollider 和其他 Collider 的一个主要不同点?

30.当一个细小的高速物体撞向另一个较大的物体时,会出现什么情况?如何避免?

31.OnEnable 、 Awake 、 Start 运行时的发生顺序?哪些可能在同一个对象周期中反复的发生?

32.请简述 OnBecameVisible 及 OnBecameInvisible 的发生时机,以及这一对回调函数的意义?

33.Unity3D 如何获知场景中需要加载的数据?

34.MeshRender 中 material 和 sharedmaterial 的区别?

答案区

第一部分

1.请简述值类型与引用类型的区别
答:区别: 1. 值类型存储在内存栈中,引用类型数据存储在内存堆中,而内存单元中存放的是堆中存放的地址。 2. 值类型存取快,引用类型存取慢。 3. 值类型表示实际数据,引用类型表示指向存储在内存堆中的数据的指针和引用。 4. 栈的内存是自动释放的,堆内存是 .NET 中会由 GC 来自动释放。 5. 值类型继承自 System.ValueType, 引用类型继承自 System.Object 。
可参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值