黑马自学9.22学习
定义在方法中的变量叫做局部变量
方法的参数就是这个方法的局部变量
局部变量使用之前必须赋值
调用带参数的方法的时候 参数的类型要一致,参数的个数一致顺序一致与参数的名字无关
方法的参数如果有默认值,在调用这个方法的时候,可以不给这个参数传值
带默认值的参数必须放在参数列表的最右侧
在调用带参数的方法的时候可以显示的指定为那些参数赋值
Switch 只能判断等值,ifelse可以判断等值也可以判断范围
二维数组 表示一个面
列如:int[,] arr = new int[2, 3];//表示声明一个2行3列表格
二维数组的元素的个数就是行*列
arr.GetLength(维度);获得指定维度的长度
rank属性获得数组的维度
交错数组的本质就是一个一维数组,只不过这个一维数组的元素又是数组
交错数组 声明方法 列如:int[][] arr=new int[3][];
交错数组里面的每一个元素都是数组类型列如: arr[0]=new int[3];
给元素赋值 列如:arr[0][1]=12;
在同一个作用域下不能定义相同名字的成员
方法的名字一样,方法的参数个数或者类型或者顺序不一样,必须在同一个类中,与方法的返回值无关
参数被params修饰称为可变参数,params只能修饰数组类型的参数并且只能修饰一维数组
给可变参数赋值的时候,可以直接传递数组的元素,在调用的时候会自动的将这些元素封装为一个数组,并将数组传递,可变参数必须放在参数列表的最后
Ref 修饰方法参数,在调用的时候必须加上ref关键字,只能传递变量
被ref修饰时候,传递的时候,不是传递变量的值,而是传递变量的地址
Ref 可以赋值,也可以不赋值
Out也是传递的变量的地址,out必须在方法内为其赋值
Out侧重于输入,ref侧重于修改
Out 在传递之前可以不赋初始值,因为在方法中肯定会为out赋值
Ref在传递之前必须要有值,因为在方法中有可能会用到这个参数的值
对象是一个具体存在,看得见,摸得着,可以直接拿来使用的
类是对一类事物的统称,是抽象的,不能直接使用
对象是根据类这个模板创建出来的,类里面有哪些特性或者功能对象里面也有,多不得,少不得
变量的命名规范
1.变量 如果只有1个单词,全部小写,如果有多个单词,除开第一个单词其余的首字母大写,如果变量是一个缩写,每个字母都要大写
2.命名要有意义
3.变量名是名词
4.方法名 每个单词的首字母要大写,方法名是一个动词
5.类名 每个单词的首字母大写,类名要是名词
成员变量声明的时候,如果不给初始值,这个成员是有默认值的,值类型的默认值是0,引用类型的默认值是null
类的成员访问修饰符
1.public 可以在任意的地方访问
2.private 只能在类的内部访问 是默认的访问级别
3.protected 在本类和本类的子类访问
4.internal 只能在当前程序集中访问
同一个类的多个对象之间毫无关系,唯一的关系是他们都是根据同一个类的模板创建出啦的
类的访问修饰符
1.public
2.internal 默认的
属性的本质是一个get和一个set方法,而set方法中定义了一个参数叫做value 所以我们可以在set块里面访问value
属性是对字段的封装
属性本身不存值 值是存在这个属性所封装的字段里面
属性的返回值雨其封装的字段没有关系
属性的返回值决定了get返回值的类型和set参数的类型
只读属性:只能通过这个属性得到字段的值,而不能通过这个属性给字段辅助,只写一个get块
只写属性:只能通过这个属性给字段赋值而不能通过这个属性取字段的值
只要类中的字段要被外界访问,就需要把这个字段封装为属性
自动属性在生程序集的时候,会为这个自动属性生成一个成员变量被这个自动属性所封装
浙公网安备 33010602011771号