S2第二章预习笔记  深入c# 数据类型

常用类型      java     c#     举例

整形          int     int     年龄

浮点型        float    float   成绩

双精度型       double  double  圆周率

自否串         String   string   急停地址

布尔类型      Boolean  Boolean  是否为少数名族

枚举类型    enum     enum   颜色

  1. 值类型

值类型源于systen.ValueType  家族 每个值类型的对象都具有一个独特的内存区域用于保存自己的值 值类型所在的区域称为栈(stack)只要在代码中修改 就毁在他的内存区域内保存这个值

实例 ::

Static void main(string []age )

{

Int heightzhang =170;//账号的身高

Int heightli = heightzhang;//否之操作

Console.writeline (“去年  账号的身高是”+heightzhang + ,李明的身高是+heighhtli);

Heightli =180;

Console.writeline (“去年  账号的身高是”+heightzhang + ,李明的身高是+heighhtli);

}

上串代码的输出结果为:

去年  账号的身高是170,李明的身高是170

去年  账号的身高是”170 ,李明的身高是180

小结

对值类型,不同的变量会分配不同的存储空间,并且存储空间存储的是该变量的值。

赋值操作传递的是变量的值,改变一个变量的值不会影响另一个变量的值

封装的概念  两种体现

  1. 体现 把方法和属性封到类中,看成是一种封装
  2. 体现 将私有字段封装成 公有的属性

自动属性

Public  string  Name(get;set);  弊端  不能业务逻辑判断

优点  简化代码(reflector反编译工具  神器)  private 字段+公有的get和set

类图

反映类中有哪些信息(字段属性和方法)

封装:

封装又称信息隐藏,是指利用抽象数据类型将数据和数据操作

结合到一起,形成一个不可分割的独立实体, 尽可能的隐藏内部细节

只保留一个对外接口,使之于外部练习

值类型和引用类型 。

值类型和引用类型

Java 8中基本类型(值类型)

Short  int  long

Double  float

Boolean

Byte 字节

Char 字符  包装类型  Character

类class

数组 int[]

String

所有的值类型和引用类型的引用都存在栈中

值类型赋值原理

在栈上复制的真实值

A=b

将b变量中存储的真是内容赋值给变量A

值传递和引用传递

值传递:

有没有ref  有ref叫引用传递,没有ref值 传递

Ref 字母能改变什么

值传递:  值类型(不会改变)  引用类型(会改变)

引用传递 : ref值类型(会改变)  ref 引用类型(会改变)

什么是形参,什么是实参? 答: 形参:在定义函数中指定的参数就是形参,在未出现函数调用时,他们并不占内存中的存储单元,只有在发生函数调用时,函数中的形参才被分配内存单元。在调用结束后,形参所占的内存单元也被释放。
实参:实参可以是常量、变量和表达式,但要求有确定的值。在调用时将实参的值赋给形参。在内存中,实参单元和形参单元是不同的单元。在调用函数时,给形参分配存储单元,并将实参对应的值传递给形参,调用结束后,形参单元被释放,实参单元仍保留原值。 
理解: 实参就是送进去方法中的东西~~行参就是把送进来的东西在方法中进行拷贝加工,加工完后方法就返回一个东西--返回值。

  值传递的时候,实参是不变的~形参是随着计算而变化的~~ 引用传递的时候~~行参怎么变~实参就怎么变.... 
参数的传递分为:1.值方式参数传递,2.引用方式参数传递。

s2第二章深入c#类型的更多相关文章

  1. 编写高质量代码:改善Java程序的151个建议(第二章:基本类型)

    编写高质量代码:改善Java程序的151个建议(第二章:基本类型) 目录 建议21:用偶判断,不用奇判断 建议22:用整数类型处理货币 建议23:不要让类型默默转换 建议24:边界还是边界 建议25: ...

  2. 二、FreeMarker 模版开发指南 第二章 数值和类型

    章节内容如下:   基本内容 类型 一.基本内容 简介 什么是数值? 什么是类型? 数据模型是哈希表 a.简介 理解数值和类型的概念是理解数据模型的关键所在.然而,数值和类型的概念并不局限于数据模型, ...

  3. RabbitMQ 消息队列 入门 第二章(交换类型fanout)

    1.安装完 RabbitMQ 之后,我们可以点击  http://localhost:15672/#/  默认账号:guest  密码: guest  在这上面我们可以查看执行情况.管理连接.管理队列 ...

  4. python 第二章 对象与类型

    可变对象和不可变对象 1,可变对象,list(列表),dict(字典),集合(set),字节数组. 2,不可变对象,数值类型,字符串,字节串,元组(具体形式 ()). 注意条件:可变和不可变指的是该对 ...

  5. FreeMarker笔记 第二章 数值和类型

    2.1 基本内容 2.1.1 简介 2.1.2 什么是数值 和程序语言中的数值类型是相似的. 2.1.3 什么是类型? 2.1.4 数据模型是哈希表 2.2 类型 2.2.1 简介 2.2.2 标量 ...

  6. S2 第二章数据库的实现

    实现增删改查代码 1 select * from student --增加数据 insert into student (name,banji,xuehao) values(,) --修改数据 upd ...

  7. Javascript权威指南——第二章词法结构,第三章类型、值和变量,第四章表达式和运算符,第五章语句

    第二章 词法结构 一.HTML并不区分大小写(尽管XHTML区分大小写),而javascript区分大小写:在HTML中,这些标签和属性名可以使用大写也可以使用小写,而在javascript中必须小写 ...

  8. C++ Primer 笔记(2)第二章 变量与基本类型

    第二章 变量与基本类型 1.基本内置类型包括算术类型和空类型,算术类型分为两类:整型(包括字符和布尔类型)和浮点型: 2.布尔类型(bool)的取值是真(true)或者假(false): 3.字面值常 ...

  9. 《C++ Primer》读书笔记—第二章 变量和基本类型

    声明: 文中内容收集整理自<C++ Primer 中文版 (第5版)>,版权归原书所有. 学习一门程序设计语言最好的方法就是练习编程. 1.8比特的char类型计算机表示的实际范围是-12 ...

随机推荐

  1. esay-ui学习笔记(一)

    JavaScript prototype用法 prototype 属性使您有能力向对象添加属性和方法. object.prototype.name=value <script type=&quo ...

  2. dropna(thresh=n) 的用法

    thresh=n,保留至少有 n 个非 NA 数的行

  3. Redis实现文章投票功能

    Redis的具体操作这里就不说了,说一下需求和设计思路. 需求:自己实现一个文章投票的功能1.能够按照时间分页倒叙查看文章信息2.能够给文章投票,一个用户给一篇文章只能投票一次3.需要记录分值.每次投 ...

  4. linux服务器查看项目日志命令

    1.tailf mywork.log | grep --line-buffered findUserList      实时跟踪日志,这里是只要findUserList 这个方法被运行,就会将它的日志 ...

  5. 获取ip地址&&测试ip地址

    # request# 动态页面加载 Selenium# request# 响应类型为 json# import json # json.loads(str) # 将str转化为dict# json.d ...

  6. js parseInt()与Number()区别

    说到转换成数字类型,我首先想到的是parseInt()方法,后来接触多了才发现还有一个Number()方法,同样是转换成数字类型,这两种方法有什么不同的呢? 1.parseInt():      pa ...

  7. 获取当前页面url并截取所需字段

    let url = window.location.href; // 动态获取当前url // 例: "http://i.cnblogs.com/henanyundian/web/app/# ...

  8. 线程池threadPools

    1.线程池是用来存储线程的容器 2.Executors.newFixedThreadPool(int n);创建线程池,并且设置线程池的容量为n 3.submit开启线程 4.会返回一个对象futur ...

  9. 多线程thread的使用

    1.thread是多线程,凡是thread的子类都是一个线程. 2.thread必须调用start方法进开启线程,不能直接调用Runnable中的run方法,因为直接调用run方法没有创建新的线程,就 ...

  10. angular学习2

    1.为了在angular里面使用bootstrap,可以如下操作 (1)停止正在运行的终端指令:ctrl+c (2)在终端里面输入:npm install bootstrap --save (3)在V ...