春哥博客
Posted 春哥博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了春哥博客相关的知识,希望对你有一定的参考价值。
封装:可以想象成遥控器,你不需要知道它内部怎么实现的,它封装好你拿来就能用就行了
继承:把这几个类重复的成员单独拿出来封装成一个类,作为它们几个共同的父类
继承的特性:
单根性:只能有一个父类(基类)
传递性:孙子可以用父亲的、爷爷的、祖爷爷的属性(查看类图看它们之间的关系,视图 - 查看类图)
父类Person
using System; using System.Collections.Generic; using System.Text; namespace 继承 public class Person private string _name; private int _age; private char _gender; public string Name get => _name; set => _name = value; public int Age get => _age; set => _age = value; public char Gender get => _gender; set => _gender = value; public void CHLSS() Console.WriteLine("吃喝拉撒睡");
子类Student
using System; using System.Collections.Generic; using System.Text; namespace 继承 public class Student:Person private int id; public int Id get => id; set => id = value; public void Study() Console.WriteLine("学生会学习");
在Main方法里执行
using System; namespace 继承 class Program static void Main(string[] args) Student s = new Student(); //这4个继承了父类Person的公共部分 s.Name = "春哥"; s.Age = 18; s.Gender = \'男\'; s.CHLSS(); //这2个是继承了自己那部分 s.Id = 9; s.Study();
子类并没有继承父类的构造函数。但是,子类会默认调用无参数的构造函数,在子类内部创建父类对象,这样子类就可以使用父类中的成员了。
所以在父类中重新写了一个有参数的构造函数之后,那个无参数的就被干掉了,子类就调用不到了,所以子类会报错。
解决办法:
1)在父类中重新写一个无参数的构造函数
2)在子类中显示显示的调用父类有参的构造函数,使用关键字:base() //调自己用this,调父类用base
以上是关于春哥博客的主要内容,如果未能解决你的问题,请参考以下文章