面向对象基础
练习
1)要求使用方法实现输入一个整数,写一个InputNum(int min,int max)的方法,反复使用
注意:
1、try-catch语句
try{容易出现异常的语句} catch{用来捕获异常}
2、注意break;的位置
知识点:
静态(static)的方法或者静态的成员只能访问静态的对象。换句话说就是;由static修饰的成员只能访问由static修饰的成员。 方法不写访问修饰符时,默认为private。方法常使用public,以便方法被随时调用。
2)通过方法输入年份和月份得到天数
常见错误1:把多个Console.WriteLine()放在一个方法中 在逻辑上没有错误,但是在组织代码的时候容易出现问题。
常见错误2:把输入和转换放在一起 很容易出现异常。用一个临时存放的变量来存储。
3)用控制台做一个简单的计算器
自己做出来了简单的程序,需要用方法再写一遍,待完成!
4)控制台输入密码显示星号*
如果时间充裕,希望再把控制台密码的代码写一遍。
学会使用MSDN帮助。 在MSDN中查看Console.ReadKey()中参数的帮助
查看ReadKey(Boolean)
那么就可以使用Console.ReadKey(true)来使按下的键不显示 下一步就要保存输入的信息: 可以看到Console.ReadKey的返回值类型是ConsoleKeyInfo类型
理论
1)面向对象 很繁琐的理论知识,老师讲的很详细,有一些懵懂,还需要看书。
2)类 类是C#的基础,讲到了类、类和对象的关系,从类到对象是一个从抽象到具体的过程。 类的定义、类的实例化
类的练习 写一个“人”类 对方法的修饰符了解的不是很清楚,老是弄混。
访问修饰符:public,private(internal,protected) 所有的字段前面都是要有访问修饰符的,如果没有默认为private。类也有访问修饰符,默认为internal。
学会使用神器:.NET Reflector!
字段写为public,可以随时被修改。
我们可以写一个方法为字段赋值: public void SetName(string n) { if(name == null) { name = n; } }
这样,初始化字段之后,就不能再修改了,因为name不为空。
3)属性
用get和set来对字段进行读取和赋值。 一般讲属性名写成和相应的字段名相同,方便查询,区分大小写。 属性的定义和字段相似。
4)构造方法
构造方法就是创建对象的同时,为对象进行初始化。方法名和类名一样,且没有返回值。
如果没有为class添加构造方法,那么系统会自动添加一个默认的无参构造方法,里面什么都没有写。用.NET Reflector查看一下。
知识点:
1、代码段的管理(其实就是简写,例如cw就是Console.WriteLine();)
工具->代码段管理 图代码段: 我们可以仿照来写自己的代码段。然后导入就可以使用我们自己写的代码段了。
2、当我们需要查看某一个变量的值时,可以通过监视,输入变量名,就会显示变量的值。
3、如果方法汇总的变量名与字段名冲突,使用this.变量名表示类中的字段,单独的变量名表示方法中的局部变量。
练习 问题:
构造方法和属性有什么关系?
->好像没有什么关系,构造方法是用来在创建实例对象的时候为之初始化;属性是为了在字段是private的情况下定义一个属性来使外界能够访问但不能随便修改。
书写代码的格式?
->可以像下面那样定义多个同类型变量吗?
int chinese, math, english;
可以写在一起吗?
name = n; age = a; gender = g; chinese = c; math = m; english = e;
5、方法、属性、字段在C#中式极其重要的,方法可以看做是类的能力或执行过程,一般在类的内部不使用属性,属性用来外界访问字段使用,字段是表征类的一些特征用到的变量
5)异常 后面还讲到了异常,也是非常的重要,因为自己对这一部分了解的非常少,目前手头的教材上面对异常讲的也很少,所以待我仔细看来。