c#继承


1.在实际项目开发中,每个类都应该单独写在一个类文件中,千万不要多个类在一个类文件中,这样不便于维护
2.子类继承父类的public  和 protected的内容
注意:子类其实也继承了父类私有的(private)字段,但是不能去访问,这就相当于你爷爷给你留下了有一亿存款的银行卡,但是没有告诉你密码——你有这个东西,但是你不能去访问。
我们通常称这些不能访问的字段不叫继承
以上很好的解释了:
为什么父类中:字段是私有的,但是属性是公共的——子类继承父类的属性时,属性的取值和赋值不是依赖于父类中的字段吗?但是字段又不能被子类“继承”,那么子类如何继承父类共有的属性?
答:其实子类有父类的私有字段,只是不能访问~
实际子类在初始化时,会完全创建一个父类的对象,然后根据父类的访问修饰符(注意:是访问修饰符不是存在修饰符,并不是说不能访问,这个东西就不存在)去决定哪些可以被子类访问(即对子类可见)~也就是说父类中有的在子类中都会存在,只是子类看得到和看不到的问题~
因此不影响父类所有公有属性和方法的继承


子类继承父类的过程详解:
 class Son : Father{ }
Son son = new Son()
当执行这句话的时候,new运算符:
1.开辟一块内存
2.在内存中创建一个子类对象:
创建子类对象的细节:
1)创建子类时在子类内部创建一个父类对象
只有创建父类的对象后才能使用父类的属性和方法
2)在创建父类对象时调用父类的默认无参构造方法,因此父类中必须有一个无参的构造方法(一般每个类都会有全参和无参的构造函数)
3)也可以在创建父类时显式的去调用父类的带参的构造方法
使用方法
子类的构造方法:base(参数) 
base是指先调用父类的构造方法
如果是this这表示先调用自己的构造方法
3.调用子类的构造方法去初始化创建的子类对象

关于public private 和 protected访问修饰符:
很简单:
public :就是在哪都能访问
private:就是在当前类的大括号里面可以访问
protected:在两者之间进行了折中,在 当前类和子类的大括号中都可以访问,但是在其他类的大括号中就不能访问

注意:c#的面向对象之所以简单,就是因为c#是纯面向对象的语言,也就是说c#中里面的所有含函数必须写在类里面,因此访问权限只涉及哪个类的大括号可以访问哪些类大括号中的属性和方法的问题
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值