C#小白学习笔记(15)类成员之方法
class Program { static void Main(string[] args) { Math math = new Math(); double i = math.Add();//实例方法需要通过实例访问 Console.WriteLine(i); double j = Math.Mul();//静态方法直接用类名访问 Console.WriteLine(j); math.And();//方法的重载 Console.WriteLine(math.And(3)); math.And("a", 3); BaseClass bc = new BaseClass(); bc.OutPut(); ChildClass cc = new ChildClass(); cc.OutPut();//方法的重写 BClass bClass = new BClass(); bClass.OutPut2(); Console.ReadKey(); } } /// <summary> /// 数学类 /// </summary> class Math { public double Add()//实例方法 { double x = 1.2; double y = 1.3; return x + y; } static public double Mul()//静态方法 { double x = 1.5; double y = 1.5; return x * y; } /// <summary> ///方法的重载 /// </summary> public void And() { Console.WriteLine("没有返回值"); } public int And(int x) { return x * 2; } public void And(string x, int y) { Console.WriteLine("没有返回值"); } } /// <summary> ///基类or父类(方法的重写) /// </summary> class BaseClass { public virtual void OutPut()//实例方法,virtual表示方法可以被重写 { Console.WriteLine("这是基类中的方法"); } } abstract class AbstractClass//抽象类只能被继承不能被实例化 { public void OutPut1() { Console.WriteLine("这是抽象类中非抽象的方法"); } public abstract void OutPut2();//抽象的方法(没有代码体) } /// <summary> ///派生类or子类 /// </summary> class ChildClass : BaseClass { public override void OutPut() { //base.OutPut();//调用被重写方法中的代码 Console.WriteLine("这里是在派生类中重写的方法"); } } class BClass : AbstractClass//如果派生类继承了抽象的基类,必须重写抽象基类中所有抽象的方法 { public override void OutPut2() { Console.WriteLine("这里是在派生类中重写的抽象的方法"); } }
运行结果:

浙公网安备 33010602011771号