面向对象编程二继承封装和多态
22页1、第五讲 面向对象编程(二)继承、封装和多态整理ppt4.3 4.3 继承、封装和多态继承、封装和多态n n4.3.1 继承n n4.3.2 封装n n4.3.3 多态n n4.3.4 this和base关键字整理ppt4.3.1 4.3.1 类的继承类的继承 继承的意思是一个类可以建立在另一个类的根底上,可以继承另一个类的属性和方法。我们把被继承的类叫做基类,通过继承产生的类叫做派生类也可以叫做父类和子类)。继承的概念来源与现实的生活,比方汽车、轮船、火车飞机等就是继承于交通工具这个类,而汽车类中又可以派生出新的类,比方轿车、面包车等等。引入继承可以让我们重用以前写过的代码,新编写的代码可以在原来的根底上继承而来。在C#中继承的方式就是定义派生类。在C#中,所有的类都是通过直接或间接地继承Object类得到的。整理ppt1.1.派生子类派生子类定义派生类的根本形式:class 派生类名字:基类名字 派生类的代码;public class Parent public Parent().定义一个构造函数 public void WriteItem().定义方法 public class C
2、hild:Parent public Child().派生类的构造函数 public static void Main()Child a=new Child();a.WriteItem();派生类使用基类的方法基类的构造函数先执行再执行派生类的构造函数。整理ppt2.2.域的继承、添加与隐藏域的继承、添加与隐藏1、域的继承:子类可以继承父类的所有成员。2、域的添加:在子类定义中加上新的域变量,就可以使得子类具有比父类多的属性。如:class Student:Person string school;int score;子类比父类多了两个成员:school、score。3、域的隐藏:子类重新定义一个从父类中继承的域变量。class A public int a;class B:A new public int a;使用new修饰符来隐藏父类的同名成员a。整理ppt3.3.方法的继承、添加与覆盖方法的继承、添加与覆盖1、方法的继承:子类可以继承父类的所有方法。2、方法的添加:在子类定义中加上新的方法,以针对子类实现相应的功能。比方可以在Student类中定义分数的判断方法。3、方法的覆盖:
3、子类定义与父类同名的方法。(多态之一 1定义同名但参数列表不同的方法,称为方法的重载;2定义同名且参数列表也相同的方法,称为新增,这时应 该在同名方法前面用new修饰符;3定义同名且参数列表也相同的方法,并且父类中的方法用abstract/virtual进行修饰,子类中的方法用override进行了修饰,称为虚方法的覆盖。整理ppt方法重载举例方法重载举例class parent public int add(int x,int y)return(x+y);class child:parent public int add(int x,int y,int z)return(x+y+z);public static void Main()child c1=new child();c1.add(1,2,3);c1.add(4,5);分别使用了自己和父类的方法。整理ppt方法隐藏举例方法隐藏举例class parent public int add(int x,int y)return(x+y);class child:parent new public int add(int x,int
4、y)return(x+y+10);public static void Main()child c1=new child();c1.add(4,5);使用了自己的方法。整理ppt虚方法覆盖举例虚方法覆盖举例Class one public void x()Console.WriteLine(“one_x);public virtual void y()Console.WriteLine(“one_y);Class two:one new public void x()/隐藏父类中的同名方法 Console.WriteLine(“two_x);public override void y()/重写同名方法 Console.WriteLine(“two_y);Class test public static void Main()two m2=new m2();one m1=m2;/m1指向m2实例 m1.x();m2.x();m1.y();m2.y();结果:one_x two_x two_y two_y整理ppt4.3.2 4.3.2 类的封装类的封装 类的封装改变了用户传统的使用数据
5、和代码的方式,它将方法和数据包含在一起构成一个独立的单元,可以通过设定单元内各个成员的的特性来控制对成员的访问。比方将一个字段定义为private,就可以防止外界直接访问这个字段。封装一个类由两种做法:1为一个私有类定义公共读方法和写方法;2使用属性,用set和get访问器。整理pptpublic class Student private string studentname;public string getstudentname()return(studentname);public string setstudentname(string na)studentname=na;class App public static void Main()Student s1=new Student();s1.setstudentname(“zhanghua);Console.WriteLine(s1.getstudentname();不能使用语句s1.studentname=“zhanghua;整理ppt4.3.3 4.3.3 多态多态 多态指的是定义具有不同功能但相同名称的方法或属性的
《面向对象编程二继承封装和多态》由会员资****亨分享,可在线阅读,更多相关《面向对象编程二继承封装和多态》请在金锄头文库上搜索。
输油设备计算机辅助仿真系统
数显式顶板离层仪B
树立科学发展观(1)
数电组合逻辑电路应用举例、竞争冒险
数电实验0GOS6051型二踪示波器实验一常用电子仪器的使用练习
数电84第五版—康华光
数码裂隙灯图像系统操作
数理统计12主成分分析
数控系统的备份与还原训练
数控技术及应用清华版7数控机床进给伺服系统的控制原理
数据解读PPT(BNU金融协会)
数控技术及应用清华版8数控机床的精度
数控机床故障诊断 (2)
数据质量评估与控制体系-刘思琦组
数控技术及应用清华版17数控机床进给伺服系统的控制原理
数控技术2011-2-数控系统
数控加工工艺与设备》电子教案
数控加工的程序编制车床
数据通信与计算机网络第二版》电子教案西南
数据资料的收集方法
2024-05-22 48页
2024-05-22 28页
2024-05-22 22页
2024-05-22 32页
2024-05-22 22页
2024-05-22 31页
2024-05-14 5页
2024-05-14 6页
2024-05-14 40页
2024-05-14 38页