属性封装以及继承

欢迎来到unity学习unity培训unity企业培训教育专区,这里有很多U3D资源U3D培训视频U3D教程U3D常见问题U3D项目源码,我们致力于打造业内unity3d培训、学习第一品牌。
今天我们来认识一下用属性实现封装:
属性
          属性是C#引入的一种语言成分,只有很少的语言支持属性。通过对属性的读和写来保护类中的域。
优点
          在于对象的使用者可以用一条语句来操作内部的数据。
格式如下:
public class Department
{
     private string departname; //定义一个私有的变量
     public string Departname // 需要注意的是:get带返回值,set带value
    {
          get
        {
              return departname;
         }
        set
        {
            departname=value;
          }
}
继承
          继承提供了创建新类的一种方法,继承对开发者来说就是代码共享。
        继承创建的子类是作为另一个类的扩充或修正所定义的一个类。
1.子类从超类(父类)中继承所有方法和变量。
2.子类和超类之间是特化与范化的关系。
网上拓展到的关于继承的目的:
       面向过程里边没有继承的概念,所以你要做出很多重复性的工作,如果让你开发一个商业应用系统,那么会有很多的实体存在,你每种实体都定义一遍,代码会很臃肿,而已不便理解,难以维护!假如某一天突然想要在人的结构中加多一个躯干的属性,那么你要把所有与人有关的结构实体都加上一个躯干,会让程序员发疯的!
       而面向对象的三个特性就是为了解决上述问题,比如说继承,用 C#描述刚才的结构
class 人
{
public string 五官{get;set;}
public string 四肢{get;set;}
}
class 男人:人
{
public string 喉结{get;set;}
}
class 女人:人
{
public string 胸部{get;set;}
}
       这样的结构,当你 要定义一个男人的实例的时候 男人 爷们=new 男人();----------爷们这个实例下边会有三个公共属性,即 五官 四肢 喉结!女人的话就是五官 四肢 胸部!
面向对象为面向过程提供了一种编码上的补充,让程序员可以节省很多力气,并且根据这些特征来改善我们的应用,使得开发更加的流畅!能够拥有更多良好的设计和算法!这个就是面向对象的目的。
       利用面向对象来改善上边的修改操作,倘若加入一个躯干的属性,那么只要加在人的那个基类里就可以了,男人女人两个类完全不用改动
子类的声明
派生类的建立需要注意:
(1).派生类会继承基类除了构造函数和析构函数的所有成员。
(2).派生类调用构造函数时,会先调用基类的构造函数。默认调用没有参数的构造函数。
(3).base关键字显式调用基类构造函数(如果基类定义了带有参数的构造函数,那么此构造函数必须被执行,且在派生类中实现该构造函数,此时我们可以使用base关键字)
方法隐藏
        如果子类方法的方法名和基类的方法名相同时,系统将隐藏基类同名方法, 自动调用子类的同名方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值