-
Ctrl r e快捷生成属性方法查看全部
-
类包含字段,属性和方案 类实例化成对象的过程叫实例化 类名 对象名=new 类名();
查看全部 -
public string Name
{
get{return _name};//读访问器
set{_name = value};// 写访问器
}
查看全部 -
关键字 out :
out和ref一样,可以让值类型参数按引用类型传参,但out还能返回结果。
out和return一样,都能返回结果,但return只能返回一个结果,out可以返回多个。
举例:
static void Growth(int age , out int age_lastYear, out int age_nextYear){
age_lastYear = age - 1;
age_nextYear = age + 1;
}
调用的时候,需要声明两个变量:int ly,int ny; 去接收返回的结果。
调用举例:
int age1 = 3;
int ly, ny;
Growth(age1,out ly, out ny);
查看全部 -
关键字 ref :让值类型参数按引用类型传参。
注意,这里的值类型不能是对象的属性。诸如 Growth( ref c1.Age),就是错误的。
正确举例:
先定义方法,注意使用ref :static void Growth( ref int age){ age ++ ;}
然后定义一个值类型变量:int age1 = 3;
调用方法的时候,也必须使用ref :Growth( ref age1);
结果:age1 = 4;
查看全部 -
引用类型的参数和值类型参数的区别:
方法内修改引用类型形参,则实参也会改变;
方法内修改值类型形参,而实参不会改变。
例如,分别调用图中的Growth方法:
Growth(c1);
Growth(c2.Age);
其中c1、c2是Child对象。结果是:c1的岁数加一,c2的岁数不变。后者仅仅是方法的形参加一。
查看全部 -
枚举是值类型;
枚举中不能定义字段、属性、方法;
枚举值默认是从0递增的整数;
举例:在项目中添加“代码文件”,命名为Gender,
代码:enum Gender{ 男,女}
其中,男=0,女=1。
调用时,使用 Gender.女 或者使用(Gender)1,都表示女。
查看全部 -
结构struct和类class的比较:
相同点:都能定义字段、属性、方法。
不同点:
根本性的不同:结构是值类型,类是引用类型。
结构中的字段不能有初始值。
结构不能包含显示的无参构造方法。
结构在调用前必须为所有的字段赋值,通过有参的构造方法实现。
结构的对象无需实例化就能调用它的字段、属性、方法。但貌似要声明为全局静态变量,否则还是会报错。
查看全部 -
return返回一个值
out返回多个值
查看全部 -
ref可以让值类型按引用类型传参
但对象的属性不能作为实参
查看全部 -
枚举是值类型
枚举中不能定义字段属性和方法
枚举值是从0开始递增的整数值
enum Gender
{
}
查看全部 -
类(引用类型):
字段 (可以有初始值)
属性
方法
-----
结构(值类型):
字段 (不能有初始值)
属性
方法 (不能显示定义无参构造,字段必须全部赋值)
不需要实例化对象(也就是不用new,就可以直接访问值和方法)
-----
查看全部 -
值类型
int
char
double
bool
值类型存储对象的值,赋值会创建值得副本,修改任何一个副本,不会影响其他的副本。
引用类型
类
数组
借口
string
引用类型变量存储对象的内存地址,赋值不创建副本,只创建地址的副本。修改任何一个副本,也同时修改其他副本
查看全部 -
用对象初始化器初始化对象
(使用的是类的无参构造)
查看全部 -
this 当前对象,可以访问当前属性,字段,方法。
可以区分重名。
查看全部
举报