zoukankan      html  css  js  c++  java
  • Unity脚本基础Day02

    1>  C#中所有引用类型的基础是什么?

    (1)引用类型的基类是System.Object

    (2)值类型的基类是System.ValueType,也隐式继承System.Object

    2>请简述ArrayList和List<Int>的主要区别?

    (1)ArrayList不带泛型    数据类型丢失

    (2)List<T>带泛型   数据类型不丢失

    (3)ArrayList需要装箱拆箱  List<T>不需要

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

    GC为了避免内存溢出而产生的回收机制

    避免:

    (1)减少new产生对象次数

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

    (3)将string换为stringBuilder

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

    (1)接口不是类,不能实例化,抽象类可以间接实例化

    (2)接口是完全抽象,抽象类为部分抽象

    (3)接口可以多继承,抽象类是单继承

    5>反射的实现原理?

    可以在加载程序运行时,动态获取和加载程序集,并且可以获利到程序集的信息,反射即在运行期动态获取类,对象,方法,对象数据等的一种重要手段.

    主要使用的类库:System.Reflection

    核心类:

    1>Assembly描述了程序集

    2>Type描述了类这种类型

    3>ConstructorInfo描述了构造函数

    4>MethodInfo描述了所有的方法

    5>FieldInfo描述了类的字段

    6>PropertyInfo描述类的属性

    通过以上核心类可在运行时动态获取程序集中的类,并执行类构造产生类对象,动态获取对象的字段或属性值,更可以动态执行类方法和实例方法等

    6>.Net与Mono的关系?

    (1).Net是一个语言平台

    (2)Mono为.Net提供集成开发环境,集成并实现了.Net的编译器,CLR和基础类库,使得.Net既可以运行在windows也可以运行于linux,Unix,Mac  OS等

    7>在类的构造函数前加上static会报什么错?为什么?

    构造函数格式为public+类名      如果加上static会报错(静态构造函数不能有访问修饰符)

    原因:

    (1)静态构造函数不允许访问修饰符,也不接受任何参数

    (2)无论创建多少类型的对象,静态构造函数只执行一次

    (3)运行库创建类实例或者首次访问静态成员之前,运行库调用静态构造函数

    (4)静态构造函数执行先于任何实例级别的构造函数

    (5)显然也就无法使用  this和base来调用构造函数

  • 相关阅读:
    PP篇10 修改工单组件行
    取未清PO逻辑
    PP篇7 生产替代料齐套后处理
    PP篇9 更改计划订单
    DEBUG技巧里的问题1 双击某个变量不能显示
    HoloLens开发手记
    开始开发HoloLens应用吧 Start Developing HoloLens Apps Today
    HoloLens开发手记
    HoloLens开发手记
    HoloLens开发手记
  • 原文地址:https://www.cnblogs.com/qipei/p/10034164.html
Copyright © 2011-2022 走看看