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

原创 2015年07月09日 23:13:31

在学习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等操作

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


版权声明:本文为博主原创文章,未经博主允许不得转载。

C#基础知识(适合初学者,简单实用)

  • 2009年08月16日 15:45
  • 772KB
  • 下载

Javascript中迫切需要知道的几个知识点

对比java中的相关知识点,我很容易操作java中的基本对象,javascript就不那么容易了,我在使用javascript的过程中遇见了这些问题: javascript用var初始化变量,...
  • redbelt
  • redbelt
  • 2017年03月18日 21:28
  • 155

C#Winform编程的基础知识

1.     将第一个窗体的值传给第二个窗体,用到第二个窗体的重载构造函数 Form2  form2=new  Form(str1); 2.     将弹出的第二个子窗体的值返回给父窗体,需要...
  • K346K346
  • K346K346
  • 2015年07月19日 00:20
  • 1501

Android 基础知识点

Android工程目录结构    res:放置应用 程序 用到的资源 文件。其包含(Drawable,layout,values等目录)。当这个目录下的文件发生变化时,src目录下面的R.j...
  • szlcw1
  • szlcw1
  • 2015年04月09日 17:20
  • 817

C#学习 知识点总结一

编程小白,刚开始自学C#,,总结一下最近的所学,表达能力有限,不喜勿喷 想到哪里就写到哪里吧, 1、.Net平台  .Net FrameWork框架 .Net FrameWork框架提供了一个稳...
  • ljllxk001
  • ljllxk001
  • 2015年12月14日 15:46
  • 916

tensorflow基础知识

Tensorflow谷歌开源的机器学习库,备受大家喜爱。下面讲解一些必备的基本知识。 tensorflow的运行流程主要有2步,分别是构造模型和训练。 在这之前,讲几个概念: tensorflo...
  • a18852867035
  • a18852867035
  • 2016年12月27日 17:04
  • 915

学习网页设计,你必须要去学习的知识点!

自媒体盛行,越来越多的人渴望拥有自己的网站,若是花钱让别人去做,虽然省心,但更多的还是难以入人心意。于是生出了自己做一个网站的心思。但对于网站建设小白来说还是有一定的难度,这时候你就得通过学习来补充知...
  • qq_36290329
  • qq_36290329
  • 2016年10月03日 22:26
  • 877

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

最近刚开始学习Java,这是这两次课整理的一部分要注意的知识点,后续还有~~~第一次发博,大家支持下 一:路径问题(path): (一)修改系统变量 ...
  • u012771003
  • u012771003
  • 2013年11月17日 21:59
  • 242

C#常用知识点总结

C#常用知识点总结: 1)方法定义语法:   访问修饰符+返回类型+方法名称+(参数列表)+{方法体}         注意:方法体中的最终返回类型必须和方法定义的返回类型一致,换句话说,如果 ...
  • liuxuejiao_
  • liuxuejiao_
  • 2015年05月16日 14:19
  • 683

C#学习笔记一 基础知识点整理

首次通过博客记录自己的学习成果,希望能够比手写效果更好
  • The_kingdom_of_God
  • The_kingdom_of_God
  • 2017年01月16日 09:19
  • 198
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#基础学习需要注意的几个知识点
举报原因:
原因补充:

(最多只允许输入30个字)