抽象类、虚方法、多态、继承概念等
1.抽象类和抽象方法
using System; namespace sqlcon { //抽象方法 abstract class testabstract { public abstract void a();//没有方法参数和内容主体,只有一个方法名和参数列表 } class overridetast:testabstract { public override void a() {//派生类需实现抽象方法的成员 Console.WriteLine(123456); } static void Main() { overridetast q = new overridetast(); q.a(); Console.ReadKey(); } } }
2.虚方法和虚属性
using System; namespace sqlcon { //虚方法和虚属性 class testvirtual { public virtual void a() {//派生类中重写使用 int a = 10; int b = 20; int c = a + b; Console.WriteLine(c); } public void b() {//派生类中隐藏使用 Console.WriteLine("这是testvirtual里的b()方法"); } //构造方法,没有返回值类型 public testvirtual(string names) { Console.WriteLine(names); } } class testoverride:testvirtual { public override void a()//重写基类a()方法 { Console.WriteLine(123); } new public void b() {//使用new关键字隐藏基类b()方法,编译器不会发出警告 Console.WriteLine("这是派生类的b()方法"); } public testoverride(string name):base(name){//base关键字调用基类的构造方法 } static void Main() { testoverride q = new testoverride("张三"); q.a(); q.b(); Console.ReadKey(); } } }
时间就像海绵里的水,只要你愿意挤,总还是有的——鲁迅