1.静态成员是属于类,非静态成员是属于对象
2.方法的名字相同参数不同就引起重载 参数不同(参数个数不同和参数列表不同) 参数列表(参数的总和) F() F 是方法()里面是参数
3.ConsoleKeyInfo ck=Console.ReadKey(); 函数返回值是什么类型,用什么类型变量接收 例如:Console.BackgroundColor=ConsoleColor.Blue当鼠标移动到BackGroundColor的时候显示前面是ConsoleColor所以等号后面用ConsoleColor Console.WriteLine(ck. );
4. int.Pare(cki.KeyChar.ToString())把录入的值转换为×××
5.音乐代码
while(true)//完成无限的录入按键
{
ConsoleKeyInfo cki=Console.ReadKey(true)//读取按键 true不显示按键数值 储存在Cki类型中
int mark;
if (int.TryParse(cki.KeyChar.ToSyring(),out mark))//判断按键是否为数字 如果是数字把录入的数值转换为×××给mark out是出参数
{
if(mark>o&&mark<8)//判断按键是否在1-7
{
Console.BackgroundColor=(ConsoleColor)mark;//设置色彩
for(int i=1; i<mark; i++)//添加空格
{
Console.Write(" ");
}
Console.Beep(mark*1000,500);//播放声音
Console.Writeline(cki.KeyChar);//打印数字
}
}
}
6.验证用户名 密码
static void Main(string[] str)
Console.Writeline("请输入用户名");
string username=Console.Readline();
Console.Writeline("请输入6位密码");
string password="";
for(int i=0;i<6;i++)
{
ConsoleKeyInfo passCki=Console.ReadKey(true);
password+=passCki.KeyChar.ToString();
Console.Write("*");
}
Console.WriteLine();
Console.WriteLine("用户名:{0} 密码:{1}",username,password);
7.值类型
基于值类型的变量直接包含值。将一个值类型变量赋给另一个值类型变量时,将复制包含的值
所有的值类型均隐式派生自 System. ValueType。
每种值类型均有一个隐式的默认构造函数来初始化该类型的默认值。
引用类型
引用类型的变量又称为对象,可存储对实际数据的引用。
8. 对象本身不存放方法,方法留在类中间。
9.值类型储存的是值不是地址 例如int i=null;是不行的 int? i=null可以
10.匿名类型只能赋给var
今天讲的大概就这么多吧,主要就是值类型和引用类型的不同
例如:static void Main(string[] args)
{
int a = 5;
int b = a;
b = 10;
Console.WriteLine(a);
}第一步是把a赋值5 第二步把a赋给b,此时b的值应该是5,但第三步时把b赋值为10 因为它只改变了b的值而a的值还是5,所以输出a的时候仍然是5
static void Main(string[] args)
{
int[] Array_a =new int[]{5};
int[] Array_b =Array_a;
Array_b[0]=10; Console.WriteLine(Array_a[0]);
}
第一步定义一个数组,并且有一个元素5,第二步把Array_a赋给Array_b,但这里赋给Array_b的只是地址,第三步把Array_b赋值10,这时10已经把原地址中的5替换了,所以当输出Array_a是Array_a的元素值变为10