关闭

C#基础学习需要注意的几个知识点

标签: Unity基础之C#基础
617人阅读 评论(0) 收藏 举报
分类:

在学习Unity之前,相信我们都要经历C#编程语言的学习,大家都知道在C#是一门面向对象的编程语言,具有封装继承多态的一些特点,这些知识点浅学并不难,但是当我们在Unity的道路上越走越远的时候,我们需要去看很多的插件源代码,看懂并且能学会去做一些简单的修改,这时,我们会发现,在这些插件的源码中有大量的委托,继承,多态,重载等,若我们的C#学的并不是非常精通,将会给我们带来很大的难题。所以,我们可能在刚接触Unity时用MonoBehavior类中封装的方法可以完成很多的功能,但是之后在深入的学习中比较乏力,然后C#的重要性将慢慢的体现出来。这里我将对一些C#基础中容易遗忘或者比较细的地方记录一下,防止以后的自己会忘记,并希望同时可以为初学Unity的人带来一些帮助。

由简入深

1.char两个字节,不同于其他语言的原因:

因为,在C#中char类型存的是unicode码,可以表示的字符比C语言等语言都多,一个字节不能全部存入,所以就多了一个字节


2.switch后面括号中只能是整形表达式么?

不,字符串、枚举等也可以


3.循环,三种循环可以相互转换,本质相同,用哪个视情况而定


4.随机值,arc4random() % (max - min + 1) + min


5.foreach中的迭代变量不能写,只能读


6.结构体与类的区别

结构体是值类型,而类是引用类型,当我们需要大量的实例化对象时,用结构体更高效,比如Unity中的Vector3


7.属性中的get与set至少有一个为public的,否则会报错


8.当存在继承时,实例化子类对象,会先调用父类构造方法,然后调用子类的构造方法


9.子类不继承父类的构造方法,但是由于实例化子类对象时会调用父类的构造方法,所以,当父类不存在无参构造方法时,需要,在子类的构造方法后面用":Base()"调用一下父类的构造方法

10.重写(override)与替换(new)的区别

重写是多态的体现,而替换不是,重写可以让父类对象调用子类方法(实例化时,父类对象 = new 子类构造),而重写,只能各调各的。

11.stringBuilder的实际作用比string大


12.单例是个很好的模式,用lock可以进行双重锁定,之后会测试及详细说明,在Unity中的使用也会说明


13.委托与事件在unity中常用于写监听事件,最常见的,就是Unity中的Button与AddListener等操作

这次就先简单写这么多,没有很深入的去写,只是写完可以对自己进行提醒注意,大家有好的建议,可以一起交流大笑


1
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:725次
    • 积分:49
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:0篇
    • 译文:0篇
    • 评论:2条
    文章分类
    文章存档
    最新评论