zoukankan      html  css  js  c++  java
  • 关于C#中派生类调用基类构造函数的理解 base使用

    些文参考

    本文来自CSDN博客,http://blog.csdn.net/cj205/archive/2008/12/05/3449828.aspx

    只是用来记录,已防止时间长了忘记,同时也可以给需要的同学用。

    原文写的已经很好了,只不过第3、4运行会有错误,试一下就知道了。

    我改造了一下。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                MyDerivedClass my = new MyDerivedClass();
                MyDerivedClass my1 = new MyDerivedClass(1);
                MyDerivedClass my2 = new MyDerivedClass(1,2);
                Console.Read();
            }
        }
    
        public class MyBaseClass
        {
            public MyBaseClass()
            {
                Console.WriteLine("我是基类无参数的构造函数");
            }
            public MyBaseClass(int i)
            {
    
                Console.WriteLine("我是基类带一个参数的构造函数");
    
            }
    
        }
    
        public class MyDerivedClass : MyBaseClass
        {
    
            public MyDerivedClass()
                :base()
            {
    
                Console.WriteLine("我是子类无参构造函数\n");
    
            }
    
            public MyDerivedClass(int i)
                :base(i)
            {
    
                Console.WriteLine("我是子类带一个参数的构造函数\n");
    
            }
    
            public MyDerivedClass(int i, int j)
            {
    
                Console.WriteLine("我是子类带二个参数的构造函数\n");
    
            }
    
        }
    }

    运行结果 

    从代码和运行结果中可以看出

    派生类构造函数如果没有使用base就默认继承基类无参构造函数,如果用base指定了,就是继承指定基类构造函数。

  • 相关阅读:
    ubuntu下安装配置apache2(含虚拟主机配置)
    ubuntu安装软件包apt-get和dpkg方法
    python日期,时间函数
    python多线程
    截取utf8中文字符串
    python解析json
    sqlite读写
    lambda,map,filter,reduce
    pyinstaller生成exe可执行程序
    对象练习
  • 原文地址:https://www.cnblogs.com/stalwart/p/3009408.html
Copyright © 2011-2022 走看看