1、-1-了解面向对象的编程思想 了解类和对象的关系 掌握C#中面向对象的实现方式 掌握创建类的步骤 掌握类的实例化 掌握继承和多态 掌握this、base关键字的使用目标-2-C#中的面向对象 类:模板 对象:对象是类的实例 继承:在一个类的基础上建立一个新类 多态:程序执行期间所具有的不同表现行为-3-类 定义类的格式:在类体中可以定义类的字段、属性、方法和事件:p 字段和属性都是类用于保存数据的成员。p 方法也称作行为,指定义于类上的某一特定操作。p 事件是指发生的事情,以启动某些处理过程。访问修饰符 class 类名类体-4-建立类在C#中创建类的步骤:1.添加类添加类 2.添加属性添加属
2、性 3.添加构造函数添加构造函数 4.添加方法添加方法public class Employee/私有字段private string name;/属性 public string Name getreturn name;setname=value;/带参数的构造函数public Employee(string n)Name=n;/方法public void Display()string msg=姓名:+Name;MessageBox.Show(msg,员工信息,MessageBoxButtons.OK,MessageBoxIcon.Information);-5-对象 使用New关键字来创
3、建一个类的对象,即对类进行实例化 示例:Employee objEm1;Employee objEm2=newEmployee();-6-继承 C#中继承的语法格式如下:示例 class 子类名:父类名子类新定义成员/父类class Class1Public void Method2()MessageBox.Show(This is another method in the base class.);/子类class Class2:Class1Public void Method2()MessageBox.Show(This is a method in derived class.);-7
4、-多态 多态是面向对象编程语言的重要特征。多态性提高了程序的灵活性和实用性。多态的体现方式:p 重载p 重写-8-重载 重载是指同一个类中存在名称相同但是参数列表不同的多个方法。示例:class DisplayDatapublic void Display(char theChar)public void Display(int theInt)public void Display(double theDouble)-9-重写 重写是指在派生类中具有与基类中名称相同的方法(或属性)。基类中允许重写的方法(或属性)使用virtual声明派生类中使用override定义重写的方法(或属性)publ
5、ic class Employee/计算薪资public virtual double CalSalary(double hoursWorked,double payRate)returnhoursWorked*payRate;public class Manager:Employeeprivate double bonusRate=1.5;public override double CalSalary(double hoursWorked,doublepayRate)returnhoursWorked*payRate*bonusRate;-10-this关键字用于指代类的当前对象。当同名的
6、内层变量隐藏了外层变量,而需要访问外层变量时,就可以使用this关键字来访问。示例:this关键字 public partial class ThisDemopublic ThisDemo()InitializeComponent();private string msg=我是类中的字段;public void ThisDemo_Load(System.Object sender,System.EventArgs e)string msg=我是局部变量;TextBox1.Text=使用this:+this.msg;TextBox2.Text=不使用this:+msg;-11-base关键字可以
7、引用基类的当前实例。base通常用于访问被派生类重写或隐藏的基类成员。示例:base关键字 public class Location int X,Y;public void Show()Console.WriteLine(X=0,Y=1,X,Y);public class Rectangle:Location int Height,Width;public new void Show()base.Show();Console.WriteLine(Height=0,Width=1,Height,Width);-12-类包括字段、属性、方法和事件 基类中允许重写的属性和方法使用关键字virtual声明,而在派生类中使用关键字override定义重写的属性及方法。this关键字用于指代当前类的对象 base关键字通常用在子类中,表示父类的关键字小结谢 谢 Thanks for listening.