一、增量和减量操作符-由于变量的增减很常用,C#引入特殊的自赋值操作符,其中+=,-+,*=,/=和%=;例如:mySalary+=5000;
二、前缀和后缀操作符:C#提供了两种增量和减量操作符:前缀操作符和后缀操作符;
例如:firstValle=secondValle++;//后缀 先赋值在增量(firstValle=10,secondValle=11)
fistValle=++secondValle;//前缀 先增量,在赋值(firstValle=11,secondValle=11)
关系操作符(Relastional Operators)作用比较两个值;然后返回布尔值(true或false)
三、操作等优先级 加法和乘法的优先级比赋值要高。
注:《》移位;
四、三元操作符
条件表达式?表达式1:表达式2. 这个操作符计算条件的逻辑是“如果是真就执行第一个,否则就执行第二个”;
五、定义标示符
#define DEBUG 定义了一个预处理器标示符DEBUG。
六、C#中没有用于预处理器的switch语句,但是#elif和#else指令提供了更大的灵活度;
#elif指令提供了“否则如果”式的逻辑,如果定义了DEBUG则编译第一个,否则如果定义了TEST则编译第二个,否则编译第三个;
另,#region(标注) #endregion 可以将中间代码折叠;
类与管理
定义类:通常用public关键字作为访问修饰符;
通用公式:[性质][访问修饰符]class类标示符[:[基类[.接口]]
为类起的名字
{类主体}
访问修饰符(几种分类)
公共的 | 无限制,标记为public的成员,被任何类的任何方法看到和访问 |
私有的 | 标记为private的类A的成员,只能被类A的方法看到和访问 |
受保护的 | 标为protelted可被类A及从类A派生的类的方法看到和访问 |
内部的 | 标为internal的类A的成员可被类A所处的程序集中的任何类的方法看到和访问 |
受保护的和内部的 | 标为protected internal的类A的成员,可以被类A及从类派生的类的方法记忆和类A同在一个程序集的任何类的方法看到和访问。 |
方法的参数
创建对象 C#的基本类型(int、char等)都是值类型,是在栈中创建的,而对象时饮用类型创建于堆中须要使用关键字new。
Time t = new Time();
本身只是指向该对象的一个饮用
构造方法
1)初始化语句
Icloneable 接口 定义了一个方法:clone();
class someType:Icloneable
{
public object clone()
{
return MemberWiseclone();//浅复制
}
}
2)This 关键字 指向对象的当前实例
this 饮用的典型用法有很多种;
a 限定被参数隐藏的实例成员;
public void SomeMethod(int hour)
{
this hour=hour;
}
this hour 成员变量 hour 就是参数;
b 把当前对象作为参数传给另一个方法
class myClass
{
public void Foo(otherclass otherObject)
{
otherObject.Bar(this);
}
}
c 与索引器有关
d 从一个重载构造方法中调用另一个。
class myClass
{public myClass (int i){//、、、、、}
public myClass():this(42){//、、、、、}
}
e 显示调用一个类的方法和成员作为一种文档;
public void MyMethod(int y)
{
int x=0;
x=7; //赋值给局部变量
y=8; //赋值给参数
this.z=5; //赋值给一个成员变量
this.Draw(); //调用成员方法
}
本节完结;下次分晓