zoukankan      html  css  js  c++  java
  • C# lesson2

    一、C#数据类型

    1、值类型

      包括数据相关(short、long、int 、double、float)、布尔(bool)、枚举

    2、引用类型

    Object 、对象、数组、字符串

    二、存储方式

    值类型

    1、所有的值类型,都是存在栈里面

    2、值类型的赋值,都是值的拷贝;

    引用类型

    1、引用类型,具体的值是存在堆里面,栈里面存的是他的引用地址

    2、引用类型的赋值,是地址的拷贝

    3、对字符串做修改的时候,不是在堆里面直接修改它的值,而是重新再堆里面开辟新空间

    三、代码解读

    命名空间:  useing。。。。。。

    访问修饰符: public。。。。

    数据类型:如 int  返回一个整数

    Person p1=new Person();

    1、当实例化一个对象的时候,就会在堆里面,将类里面非静态的所有字段、方法声明。

    2、当实例化一个对象的时候,类里面的对象不管是一个值类型还是一个引用类型,都是存在堆里面

    3、当实例化另外一个对象的时候,就会在堆里面找之前是否有过水花对象,如果有的话就会把里面的成员(字段)作为模板拷贝一份;

    存储位置如下:

    4、.net framework里面的GC(垃圾回收机制),会将内存里值为null或者长期不用的对象、变量回收;

    内存里面有一个专门的区域叫静态区,专门存放静态数据:

    四、装箱和拆箱

    装箱:值类型穿转为引用类型;

    int i=10;
    Console.WriteLine(i.ToString());

    拆箱:引用类型转化为值类型;

    string s="10";
    Console.WriteLine(Convert.ToInt32(s));

    注:在程序里面要尽可能的避免装箱和拆箱,提高程序性能;

    五、运算(同javascript)

    特别的:操作符:??

    运算规则:  a=b??c

    意义:b等于null  则a=c     否则a=b

  • 相关阅读:
    Java知多少(下)
    Java知多少(112)数据库之删除记录
    Java知多少(111)数据库之修改记录
    Java知多少(110)数据库之插入记录
    Java知多少(109)数据库更新
    Java知多少(108)数据库查询简介
    C# Linq处理list数据
    vs2008 使用百度编辑器
    HTTP 错误 500.19
    联想R720面板右下部分按压后和上面按键串联了
  • 原文地址:https://www.cnblogs.com/zhuyucun/p/6277927.html
Copyright © 2011-2022 走看看