c#学习之旅------01

一、交换两个数的值

  //交换两个数的值
#region 方法一
int num1 = , num2 = ;//待交换的两个数值
int temp;//临时变量
temp = num1;
num1 = num2;
num2 = temp;
Console.WriteLine("num1 is :{0},num2 is :{1}", num1, num2);
Console.ReadKey();
#endregion #region 方法2
int num1 = , num2 = , temp;
temp = num1 + num2;
num1 = temp - num1;
num2 = temp - num2;
Console.WriteLine("num1 is :{0},num2 is :{1}", num1, num2);
Console.ReadKey();
#endregion

二、c#访问修饰符

C#共有5种访问修饰符:public ,private, protected internal, protected internal.

访问修饰符 说明
public 公有访问。不受任何限制。
private 私有访问。只限于本类成员访问,子类,实例都不能访问。
protected 保护访问。只限于本类和子类访问,实例不能访问。
internal 内部访问。只限于本项目内访问,其他不能访问。
protected internal 内部保护访问。只限于本项目或是子类访问,其他不能访问

三、方法

1.方法名称
             *  规范:每一个单词的首字母大写

2.方法的返回值

*  void:没有返回值。不能使用return来返回具体的值 ,但是可以使用return终止当前方法
             *  非void:必须返回指定类型的值,有两种例外:double --float/int   父类类型--返回子类

3.方法的调用

* 方法的调用:

静态:地址只分配一次。静态的成员是与类一起生成的,所以有静态成员的时候,非静态成员还没有生成,所以不能调用到

* 如果方法添加了static关键字,那么就是静态方法,否则就是非静态方法

* 在同一个类中方法的调用:

1.静态可以直接调用静态

2.静态不能直接调用非静态---静态先生成

3.非静态可以直接调用静态

4.如果静态需要调用非静态成员必须使用实例成员

5.非静态可以直接调用非静态

* 方法的重载:
                     *前提:方法的名称必须一样
                     *条件:参数不一样(两个不一样:数量不一样  或者   类型不一样)
                     *与方法的访问类型和返回值类型没有任何的关系

* 可变参数:参数值的数量可以是任意 0~多个
                     1.可变参数调用的时候没有必须将传递的值封装为一个数组,可变参数会自动为你创建一个合适长度的数组
                     2.如果没有传递任何参数,那么就会生成一个长度为0的数组--索引越界
                     3.可变参数的实参值的类型必须一致
                     4.可变参数必须是参数列表的最后一个

未完待续...

上一篇:dlopen()不能与android-n一起使用


下一篇:error:LNK2005 已经在*.obj中定义