- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C_ 语法学习笔记
C# 语法学习笔记
1 A.类:
2 ● 类与类的使用:
3 class A{
4 public int wheels; \\公有成员
5 protected float weight; \\保护成员
6 }
7 class B{
8 void F{
9 A v1=new A(); \\创选类A的实例
10 v1.wheels=10; \\调用类A的公有成员成功
11 v1.weight=1.0; \\错,因为此变量为保护成员
12 }
13 }
14 ● 类的继承:
15 类 B 从类 A 中继承
16 class A{}
17 class B:A{}
18
19
20 B.静态成员和非静态成员:
21 一般说来,静态成员属于类所有的,非静态成员则属于类的实例--对象
22 (非静态成员在类的每个实例中都占有一个存储(或者说具有一个副本),
23 而静态方法是类所共享的,无法判断当前的非静态属于哪个类的实例.
24 引用静态与非静态成员:
25 int a; //非静态成员
26 static int b; //静态成员
27 void F(){ //非静态方法F
28 a=1; //正确,等价于 this.x=1
29 b=1; //正确,等价于 Test.y=1
30 }
31 static void G(){
32 a=1; //错误,不能访问 this.x
33 b=1; //正确,等价于 Test.y=1
34 }
35 static void Main(){
36 Test t=new Test();
37 t.a=1; //正确
38 t.b=1; //错误,不能在类的实例中访问静态成员
39 Test.a=1; //错误,不能用类访问非静态成员
40 Test.y=1; //正确
41 }
42 ● 在同一类的引用
43 非 访 非=直接(可用 this.X) 静 访 静=直
44 非 访 静= Test.a 静访非=创造实例=t.a
45 Test t= newTest();创造实例后用 qf.F()访问 /FONT /FONT
46
47 C.this 保留字在各种结构中的含义: 实例=类的结构
48 1.(类的构造函数)值类型,对构造的对象本身的引用
49 2.(类的方法)值类型,对调用该方法的对象的引用
50 3.(结构的构造函数)变量类型,对构造的结构的引用
51 4.(结构的方法)变量类型,对方法的结构的引用
52
53 D.构造函数析构函数 (作用用于执行类的实例的初始化)
54 ● 通常与类名相同
55 ● 不声明反回类型
56 ● 一般是 public 类型,如是 private 表明类不能被实例化,这通常用于只含有静态成员的类
57 ● 不要做对类的实例进行初始化以外的事情,也不要尝试显式地调用构造函数
58 intx=0,y=0,count; //不带参数的
59 public A(){
60 count=0;
61 }
62 public A(int vx.int vy){ //带参数的
63 x=vx;
64 y=vy;
65 }
66
67 E.方法
68 ● 不能与类中的成员名相同
69 ● 用 abstract 和 extern 修饰方法的执行有一个简单的分号
70 ● 执行部份通过 return 语句得到返回值,return 后不跟任何值,反回的是 void 型
71 ● (非静态成员在类的每个实例中都占有一个存储(或者说具有一个副本),
72 而静态方法是类所共享的,无法判断当前的非静态属于哪个类的实例.
73 ● 值参数,给值做一份拷贝
74 ● 引用型参数 ref
75 ● 输出参数 out
76 ● 数组型参数 params(否则提示重载)
77
78
79
80 static int max(intx,int y){
81 if(xy)
82 return x;
83 else
84 return y;
85 }
86 static void Main(){
87 Console.WriteLine(10与8那个大:{0},max(
文档评论(0)