Unity3D培训
美国上市Unity3D培训机构

400-111-8989

热门课程

Unity3D工程师高频面试题,向着高薪粗发

  • 时间:2017-02-27
  • 发布:Unity3D培训
  • 来源:3D面试题

想要应聘一个高薪职位,第一关就是面试。那对于游戏开发的小伙伴来说,unity3d游戏开发面试时要注意哪些问题呢?下面奇酷学院就总结了一些面试高频题目,相信可以为大家带来一些帮助。

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

答:区别:

值类型存储在内存栈中,引用类型数据存储在内存堆中,而内存单元中存放的是堆中存放的地址。

值类型存取快,引用类型存取慢。

值类型表示实际数据,引用类型表示指向存储在内存堆中的数据的指针和引用。

栈的内存是自动释放的,堆内存是.NET中会由GC来自动释放。

值类型继承自System.ValueType,引用类型继承自System.Object。

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

答:引用类型的基类是System.Object 值类型的基类是System.ValueType,同时,值类型也隐式继承自

【Unity3D工程师高频面试题】

请简述ArrayList和List的主要区别

答:ArrayList存在不安全类型,(ArrayList会把所有插入其中的数据都当做Object来处理)装箱拆箱的操作(费时),List是接口,ArrayList是一个实现了该接口的类,可以被实例化。

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

答:GC回收堆上的内存,避免:

)减少new产生对象的次数

)使用公用的对象(静态成员)

)将String换为

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

答:抽象类表示该类中可能已经有一些方法的具体定义,但接口就是只能定义各个方法的界面 ,不能具体的实现代码在成员方法中。

类是子类用来继承的,当父类已经有实际功能的方法时该方法在子类中可以不必实现,直接引用父类的方法,子类也可以重写该父类的方法。

实现接口的时候必须要实现接口中所有的方法,不能遗漏任何一个。

【Unity3D工程师高频面试题】

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

答:其实在C#中第一行是会出错的(Java中倒是可行)。应该这样初始化:

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

答:会产生运行时错误,因为foreach是只读的。不能一边遍历一边修改。

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

答:类声明时可防止其他类继承此类,在方法中声明则可防止派生类重写此方法。

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

答:

对任何类和成员都公开,无限制访问

仅对该类公开

对该类和其派生类公开

只能在包含该类的程序集中访问该类

简述unity3d支持的作为脚本的语言的名称

答:Unity的脚本语言基于Mono的.Net平台上运行,可以使用.NET库,这也为XML、数据库、正则表达式等问题提供了很好的解决方案。

里的脚本都会经过编译,他们的运行速度也很快。这三种语言实际上的功能和运行速度是一样的,区别主要体现在语言特性上。

和网页中常用的JavaScript不一样,它编译后的运行速度很快,语法方面也会有不少区别。

类似于Java编程语言的变异型语言;

可以看做是Python语言的变种,又糅合了Ruby和C#的特性,它是静态类型语言

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

答:仅能从主线程中访问Unity3D的组件,对象和Unity3D系统调用支持;如果同时你要处理很多事情或者与Unity的对象互动小可以用thread,否则使用coroutine。

注意:C#中有lock这个关键字,以确保只有一个线程可以在特定时间内访问特定的对象

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

答:Transform 父类是

矩阵相乘的意义及注意点

答:用于表示线性变换:旋转、缩放、投影、平移、仿射注意矩阵的蠕变:误差的积累

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

答:不美观,OnGUI很耗费时间,使用不方便

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

答:组件上绑定的对象被删除了

上一篇:Unity3D培训,U3D企业面试题指导第二篇
下一篇:Unity3D培训班分享:Unity3D面试题整合

Unity3D工程师高频面试题,向着高薪粗发

选择城市和中心
贵州省

广西省

海南省