书签 分享 收藏 举报 版权申诉 / 22
上传文档赚钱

类型C#程序设计33-类的继承课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4143779
  • 上传时间:2022-11-14
  • 格式:PPT
  • 页数:22
  • 大小:95.37KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《C#程序设计33-类的继承课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    C# 程序设计 33 继承 课件
    资源描述:

    1、单元3 面向对象的C#知识目标 v(1)理解面向对象的封装性、继承性和多态性;v(2)掌握类的定义;v(3)掌握静态方法和静态类;v(4)掌握C#的继承语法;v(5)掌握接口的声明和实现的语法;v(6)理解抽象方法和接口的作用。能力目标v(1)能理解面向对象的封装性、继承性、多态性;v(2)能将常见的事物抽象成恰当的类;v(3)能正确定义类和类的成员,能使用访问修饰符控制封装程度;v(4)能以对象及对象与对象的相互作用来分析问题;v(5)能以继承表示实际问题中分类;v(6)能理解并使用接口约定不同类型对象的行为;v(7)能理解接口和抽象类的差别。教学任务v任务1 类的定义及使用v任务2 构造函

    2、数、静态成员和命名空间v任务3 类的继承v任务4 多态v任务5 接口单元3 面向对象的C#任务3 类的继承引例v定义一个Animal类,包含Type属性,toString()方法和sound()方法,并派生出Dog类、Cat类,派生类拥有另外一个属性Name。知识储备v知识点1:类的继承。v知识点2:继承隐私保护。v知识点3:继承时构造函数的调用。知识点1:类的继承vC#是一种面向对象的编程语言,它同样具有面向对象编程的一些特点。前面我们已经详细了解了类、对象、属性和构造函数等,它们是面向对象的基础知识,面向对象编程的更深层次的问题包括了继承性、多态性和异常等其他一些相关的知识。v继承性是从现

    3、有的类中派生出新类的功能,它能分析多态性的细微差别,并允许创建类层次结构,使用继承可以创建一个定义了多个相关项目共有特性的通用类。定义派生类v派生类能够继承基类的方法、特性等,但继承得到的成员也受作用域的限制,即使派生类继承得到基类成员,也可能无法访问。v派生类一般格式:类型修饰符 class 类名:基类名 派生类成员;示例 public class A public A()public void doA()public class B:A public B()public void doB()public class Tester public void Main()A a=new A();

    4、B b=new B();b.doB();b.doA();a.doA();a.doB();/非法继承 B b1=new B();A a1=(A)b1;/B对象可以调用强制转化为A类型,因为B继承自A 知识点2:继承隐私保护修饰符类内部子类其他类public可以可以可以protected可以可以不可以private可以不可以不可以说明:如果父类中的成员只允许父类独有,不允许子类或其他类访问,则使用访问修饰符private,也就是说使用了private修饰符则只能在父类中使用。如果父类中的成员,只允许父类和其派生类访问,不允许其他类访问,则在父类中用protected修饰该成员,当使用“base”关

    5、键字时,是可以访问父类成员的。实践任务1v描述一个长方体类(包含长宽高,带三个参数的构造函数,以及体积计算方法),并派生一个正方体类。知识点3:继承时构造函数的调用v构造函数调用:如果派生类的基类本身是另一个类的派生类,则构造函数的调用次序按由高到低顺序依次运行。public class A public A()Console.WriteLine(A的构造函数);public class B:A public B()Console.WriteLine(B的构造函数);public class C:B public C()Console.WriteLine(C的构造函数);class Progr

    6、am static void Main(string args)C c=new C();Console.ReadKey();【例3-9】由长方形类派生出正方形类,正方形类的构造函数调用基类的构造函数。class Rectangle protected double length;private double width;public Rectangle(double l,double w)length=l;width=w;class Square:Rectangle public Square(double l):base(l,0)public double Area()return leng

    7、th*length;class Program static void Main(string args)Console.WriteLine(请输入正方形的长:);Square s=new Square(double.Parse(Console.ReadLine();Console.WriteLine(正方形的面积为:0,s.Area();Console.ReadKey();继承的特性v1、传递性v子类的子类具备其父类以及父类父类的属性和方法。v2、单根性vC#的继承有一个很重要的特性,继承是单继承,不支持多继承,即,一个子类只能有一个父类。v3、密封性v在.NET类库中,绝大多数类可以以基类

    8、产生派生类。因为从面向对象编程的思想看,类具有开发性,即一个类为了具有很好的扩展性,是不能密封的,因为类一旦密封,则该类不再具有扩展的空间。密封类v密封类定义一般格式:访问修饰符 sealed class 类名称密封方法v一般格式:public class A public sealed void show()Sealed类与方法v被声明为sealed的类不能被继承v被声明为sealed的方法不能被重写调用基类的同名方法v已替换或重写了某个方法的派生类仍可以使用 base 关键字访问基类中的该方法。在派生类中声明与基类同名的方法,也叫方法的重写。在派生类重写基类方法后,如果想调用基类的同名方法

    9、,使用base关键字 public class A public void DoWork()public class B:A public new void DoWork()base.DoWork();/A类的DoWork()方法 归纳总结v知识要点:v(1)派生类的定义方法;v(2)protected访问修饰符作用;v(3)继承的顺序,继承的特点子类只能继承自一个父类;v(4)构造函数和方法的继承;引例分析与实现v定义一个Animal类,包含Type属性,toString()方法和sound()方法,并派生出Dog类、Cat类,派生类拥有另外一个属性Name。并在测试类中测试定义的类。cla

    10、ss Animal private string type;public string Type get return type;set type=value;public string toString()return 这是一个动物类;public void sound()Console.WriteLine(动物声音);class Cat:Animal private string name;public string Name get return name;set name=value;private string breed;public string Breed get return

    11、 breed;set breed=value;public string toString()return Cats name is+name+,属于 +breed+,在被抚摸感到舒服的时候,会;public void sound()Console.WriteLine(喵喵叫);class AnimalTest static void Main(string args)Animal d1=new Dog();Animal c1=new Cat();Dog d=new Dog();d.Name=吉娃娃;d.Breed=哺乳类和肉食性;Console.Write(d.toString();d.sound();Cat c=new Cat();c.Name=波斯猫;c.Breed=哺乳类和肉食性;Console.Write(c.toString();c.sound();Console.ReadKey();拓展实践v定义一个交通工具(Vehicle)类,拥有轮子和重量两个公共属性,并派生出小汽车(Car)类添加载客人数属性,并定义显示车辆信息的方法。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:C#程序设计33-类的继承课件.ppt
    链接地址:https://www.163wenku.com/p-4143779.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库