编程思想
1.面向过程
面向过程是要把问题解决的过程分成有一定顺序的不同步骤, 然后按照步骤一步步的将问题解决.
2.面向对象
面向对象解决问题的思路是先分析问题中所涉及的对象, 然后是使对象执行各自的功能, 进而达到解决问题的目的.
一.类
类, 就是类型, 是具有相同特征和功能的抽象.
类定义的格式
访问修饰符 class 类名 { 特征 行为 } // 注: 特征和行为都称为该类的成员;
例1
public class Zomby { public string color; public float height; public float weight; public int level; public void Jump() { Console.WriteLine("Jumping..."); } public void Bite() { Console.WriteLine("Biting..."); }
注:class后面是类型名, 类名的命名要符合大驼峰命名法;
二.对象
类是抽象的, 对象是该类的一个具体的事物. 比如, 英雄是一个类, 鲁班7号就是一个具体的对象.
创建对象
类名 对象名 = new 类名();
例1
Zomby zb = new Zomby();
三.访问修饰符
-
internal: 只能在同一个namespace下使用;
-
private: 如果一个字段被设置成私有的时候, 只能在类内部使用, 在类的外部是无法使用的;
-
public: 访问不受限制, 在哪都能访问;
-
protected: 只能是该类或该类的派生类能使用;
结构体:
-
结构体定义到类的外部: 默认访问级别是internal(只能用public和internal来修饰);
-
当结构体定义到类的内部的时四种访问修饰符都可以使用, 默认是private;(这个时候结构体就是类的成员)
结构体成员
可以用internal, private和public来修饰, 默认是private;
类:
默认的访问级别是internal(只能使用public和internal来修饰)
类的成员:
默认的访问级别是private(可以用private, protected, public, internal);
四.方法
方法: 封装了一段具有特殊功能的代码段;
第一种形式: 无参, 无返回值
访问修饰符 void 方法名() { 代码段; } // 调用的格式: 对象名.方法名();
练习1.
public class Math { public void UsingMath() { Console.WriteLine("您正在感受代码之美..."); } }
第二种形式: 无参, 有返回值的
访问修饰符 返回值类型 方法名() { 代码段; return 具体的值; // 该数值一定要和返回值类型保持一致 } // 调用格式 返回值类型 变量名 = 对象名.方法名();
练习2
public int Sum() { int a = 10; int b = 30; int sum = a + b; return sum; }
注意:
-
在VS下输入 对象名.方法名(,) 可以看到该方法的参数和返回值类型. 这样子程序不容易写错;
-
有返回值一定要有return, 无返回值的方法也可以使用return, 它代表整个方法被终止;
-
返回值只能返回一个数据也就是 一个方法只能有一个返回值
第三种形式: 有参数, 无返回值
访问修饰符 void 方法名(参数1, 参数2[,参数3...]) { 代码段; } //调用格式: 对象名.方法名(实参1,实参2[.实参3...]); // this 谁调用了该方法 this代表的就是谁
练习3 拼接两个字符串
public void AddString(string str1, string str2) { Console.WriteLine(str1 + str2); }
第四种形式: 有参数有返回值
访问修饰符 返回值类型 方法名(参数1[,参数2...]) { 代码段; return 数值; } // 方法的调用 返回值类型 变量名 = 对象名.方法名(实参1[,实参2...]);
练习4 计算int类型数组每个元素之和, 并将和存储起来
public int SumArray(int[] arr) { int sum = 0; foreach(int item in arr) { sum += item; } Console.WriteLine("The sum is : " + sum); return sum; }
思维导图