C#基础--继承
2016-06-06 13:30
471 查看
1.0继承
话不多说 直接上demonamespace soaeon { /// <summary> /// 父类 /// </summary> public class Person { public string Name { get; set; } public bool Gender { get; set; } public int Age { get; set; } public Person(string name, bool gender, int age) { this.Name = name; this.Gender = gender; this.Age = age; } } }
namespace soaeon { /// <summary> /// 子类 /// </summary> public class Student : Person { //继承自Person后 Student类将拥有Person类中的全部成员 public int ClassNum { get; set; } public string SayHi() { return "Hi"; } public Student(string name,bool gender,int age,int classNum) : base(name,gender,age) { this.ClassNum = classNum; } } }
namespace soaeon { class Program { static void Main(string[] args) { Student s = new Student("soaeon",false,18,1); Console.WriteLine(s.SayHi()); Console.ReadKey(); } } }
继承的语法:
子类:父类
Student类是Person类的派生类,Person类是Student类的基类.
同时也可以这么说
Student类是Person类的派生类,Person类是Student类的基类.
继承的效果:
子类拥有了父类的所有的成员.包括私有成员. 只不过父类的私有成员在子类中无法访问.
子类从父类继承,就意味着子类拥有了父类的所有成员?
子类会不会继承父类的私有成员?
子类从父类继承,子类模板中就会拥有父类模板中的所有的成员(包括私有成员).
在创建子类对象的时候,父类模板中的私有成员也会在创建在子类对象中, 只不过在子类中无法访问父类继承过来的私有成员
但是它却真实的存在.
是否可以继承多个父类?
不可以 但是一个类可以实现多个接口(关于接口 下一篇介绍!)
相关文章推荐
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)6-----在不卸载程序域的前提下替换程序集文件。
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)5-----Assembly.Unload
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)3---- 动态加载Assembly应用程序
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)1----C#中动态加载和卸载DLL
- C#转换全角半角方法示例
- C#中List〈string〉和string[]数组之间的相互转换
- C# Stream 和 byte[] 之间的转换
- C#实现把科学计数法(E)转化为正常数字值 (转)
- C#之 String.Format对字符串格式化
- C# Process.Start()方法详解 .
- C#多线程同步事件及等待句柄 .
- C#多线程中WaitOne函数的?
- 归纳一下:C#线程同步的几种方法 2
- 归纳一下:C#线程同
- c# Socket通讯中关于粘包,半包的处理,加分割符
- C#中datagridview使用tooltip控件显示单元格内容的方法
- C#中DataBindings用法实例分析
- C# 解决窗体假死的状态 非常有用!且非常重要!
- C#中Mutex对象用法分析
- C# 多线程的自动管理(线程池)