zoukankan      html  css  js  c++  java
  • C知识(#一些笔记)

    C#的学习,是配合unity3D而一起学习的,接下来将记录一些学习过程中的心得体会,以及一些笔记。

    C#是微软创建的面向对象的,简洁安全的程序语言。以C/C++为语言基础,开发的环境是visual studio,最新版本是C#4.0

    C#必须在net.framework上运行,其包括公共语言运行库,net.framework类库

    接下来介绍一些基本概念:

    类:将具有同一性质的的对象抽象成一个类,是一种逻辑抽象概念,可以包含各种成员变量,比如:字段,常量和方法

    对象:对象是具体的事物,是类的实例,通过对象可以调用类的实例字段和方法

    方法:它是类的一个成员,是包含一系列语句的代码块,可以改变对象的状态

    Main()方法,称之为主方法,是所有程序运行的入口,其余的方法分为有参数和无参数两种被调用,如果调用的是由参数的函数,那么在调用的时候参数要进行传递

    命名空间:定义了一个声明区域,提供了一种将一组名称与另一组名称进行区分的方法,一个命名空间的声明的名称不会与另一个命名空间的相同名称冲突,使用using引入命名空间

    C#扩展

    继承性:一个类含有多个的子类,子类比父类更加的具体化,并且具有更多的行为和属性

    多态性:一个类在不同的方法中被调用,能够呈现不同的结果

    接口:接口和类是类似的,但是接口仅仅是描述一种规范,不具体实现这些规范

    C#类型的分类

    值类型:它是变量直接包含数据,储存的是数据,它的值不是null,类型一般是结构类型或者枚举类型

    引用类型:它的变量只对其储存的数据进行引用,储存的是访问地址

    指针类型:只用在不安全的代码中,一般不常用

    1.值类型的基础是System.ValueType

    3.3引用类型

    引用类型的变量也成为对象,有六种类型:
    (1)对象类型

    (2)字符串类型

    (3)类类型

    (4)数组类型

    (5)接口类型

    (6)委托类型

    在使用引用类型的变量的之前,要先判断该变量的值是不是null。如果是的话就不能直接访问

    1.类类型:支持继承机制

    2.对象类型:内置的引用类型,即System.object

    3.字符串类型:表示零或者更多的unicode字符组成的序列,对应着System.string,使用双引号创建,一旦被创建它的创建的内存中的内容就不能被修改,要改变值只能够重新分配一块新的内存

    4.数组类型:在声明数组的时候,元素类型之后要紧跟着中括号

    5.接口类型:接口只是一种数据结构,可以声明数据成员和函数成员,它只能声属性,方法和事件,但是不能实现这些属性,方法和事件

    6.委托类型:它能够引用一个或者多个的方法,能够将方法作为参数进行传递,并且还可以定义回调方法

    3.4装箱和拆箱

    作用:值类型和引用类型的值的相互转换

    引用类型总被分配在托管堆上,值类型被分配在堆栈上

    1.装箱:将值类型转换为引用类型,具体过程是:首先分配一个对象实例,然后将值类型的值复制到该实例中,对于引用实例来说,装箱前后都共享同一个实例

    四种常见的装箱:
    (1)值类型到object类型

    (2)值类型到System.ValueType类型

    (3)值类型到值类型实现的接口类型

    (4)枚举类型到System.Enum类型

    2.拆箱:将引用类型转换为值类型,具体的过程是:检查改对象实例是否为给定值类型的一个装了箱的值,将值从实例中复制出来(比装箱多了检查那一步)

    四种常见的拆箱:

    就是把前面的装箱的过程反过

    System.ValueType的三种方法:
    (1)Equals():判定当前的实例和指定的对象是否相等

    (2)GetHashCode():返回当前实例的哈希代码

    (3)ToString():返回当前的变量的字符串形式

    2.整数类型

    (1)Int  整数的32位,范围是-2^32~2^32-1

    (2)Long 整数的64位,范围是-2^64~2^64-1

    (3)Char  16位的unicode,可以隐式的转换为整数,定义的时候要用单引号括起来

    3.浮点类型

    两种浮点类型:单精度浮点(float)和双精度浮点(double)

    非数字的时候被缩写成Nan

    在直接的书写float类型的时候,要在数值的后面加上f或者F

    在直接的书写double类型的时候,要在数值的后面加上d或者D

    4.decimal类型

    表示财务计算和货币计算,表示128位的计算

    在浮点型和decimal之间不存在隐式的转换,因为后者比前者的精度更高,    但是范围更小

    在书写的时候需要在后面加上m

    不支持有符号的0,无穷大和Nan

    5.bool类型

    布尔类型只有两种值:true或者false

    布尔类型和其他值之前不存在任何标准转换

    6.枚举类型

    把一组相同类型,表达固定含义的数据作为一个集合放到一起

    一般包含一个或者多个枚举值,每个枚举值之间用逗号隔开,默认的基础类 型是Int

    7.结构类型

    是一组相关信息组合成的单一实体

  • 相关阅读:
    linux 短信收发
    sama5d3 环境检测 adc测试
    【Codeforces 723C】Polycarp at the Radio 贪心
    【Codeforces 723B】Text Document Analysis 模拟
    【USACO 2.2】Preface Numbering (找规律)
    【Codeforces 722C】Destroying Array (数据结构、set)
    【USACO 2.1】Hamming Codes
    【USACO 2.1】Healthy Holsteins
    【USACO 2.1】Sorting A Three-Valued Sequence
    【USACO 2.1】Ordered Fractions
  • 原文地址:https://www.cnblogs.com/xzm123/p/8963482.html
Copyright © 2011-2022 走看看