class SX
{
private int number; //编号
//当外界调用方法的时候相当于调用了number的值
//并且外界无法对number进行操作
public int GetNum() //可读
{
return number;
}
//外界通过此方法可以直接修改number的值
//但是无法对number取值
public void SetNum(int value) //可写
{
number = value;
}
}
private string name;
//这是一个可读可写的属性
public string Name
{
//当属性存在get、set访问器时,可以在get、set前加访问修饰符
get
{
return name;
}
set
{
name = value;
}
}
//当我们只写一个get或set属性的时候,默认另外一个private不可访问
//访问器本质上也就是方法
private int age;
public int Age
{
set
{
age = value;
}
}
int x, y;
x = 3;
y = x;
y = 33;
Console.WriteLine(y);//y=33
Console.WriteLine(x);//x=3
int[] a = new int[1];
int[] b = new int[1];
a[0] = 3;
b = a;
b[0] = 33;
Console.WriteLine(b[0]);//b[0]=33
Console.WriteLine(a[0]);//a[0]=33
class MyMath
{
//以ref修饰的参数,不管是什么类型,TA都会有应用类型的特性
public void Swap(ref int x,ref int y)
{
int temp = x;
x = y;
y = temp;
}
//当我们需要多个返回值的时候,我们可以使用输出参数
//在方法中,输出参数必须要有值
public int Cal(int a, int b, out int x, out int y, out int z)
{
x = a b;
y = a - b;
z = a / b;
return a * b;
}
//数组参数
//数组参数不能和ref、out一起使用
//数组参数只能在所有参数最后面
public void Sum(params int[] arr)
{
int result = 0;
for (int i = 0; i < arr.Length; i )
{
result = arr[i];
}
Console.WriteLine("算出结果为:", result);
}
}