c#之封装、继承、多态

类就是一个封装体

Vector3 3维类

需要定义三个变量 float x y z

 

 

类的封装

 

封装的过程

这是在c#中 如果unity则不需要封装可直接定义

对参数的封装,当一个函数包含多个参数时,可以将多个参数定义在一个类中,这样直接调用这个对象就可以调用多个参数(这样的类仅仅为了封装代码,不是现实物体的对象)

③ 将一段代码封装到一个方法中,为了便于多次使用

④程序集 一个项目就相当于一个程序集

(using System.IO就是一个用于文件输入输出的程序集)

⑤方法的重载 名字相同方法体不同

一层一层向上封装 目的是为了增加代码的重用性

 

 

继承:

继承的目的也是为了重用性

不能继承一个private 的类

如果dog继承animal 如果调用dog初始化 则会先调用父类之后在调用自身函数

 

如果自己写了一个有参的构造方法后 最好在写一个无参构造方法 因为继承的时候会调用这个类的构造方法,如果没有那么就会报错。

但是如果在子类中想要明确的调用某个带参的构造方法,那么 使用以上:base(参数);就可以如果参数位置不写则代表调用无参数的构造方法。

 

单继承:指只能继承一个类

如果没有继承类 那么他直接或间接的继承object类

 

多态

①运算符中是在继承关系中的应用 如果没有继承关系就没有用

② 判断能够转换成功

dog和cat是两个继承animal的两个类

使用 is 会返回一个bool变量的值用于判断a1是不是可以转成animal类型

③进行转换

④拓展性和差异性

同一个变量由于指向的对象不一样,所以调用的方法一样 可是输出的不一样,使用父类virtual和子类中用override进行重写进行覆盖。即将父类中的某个方法在子类中重写

在原有代码的基础上增加了一些功能

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值