zoukankan      html  css  js  c++  java
  • 抽象类可以有构造函数吗

    我们知道,抽象类是不能被实例化的。但抽象类是否可以有构造函数?答案是可以有。抽象类的构造函数用来初始化抽象类的一些字段,而这一切都在抽象类的派生类实例化之前发生。不仅如此,抽线类的构造函数还有一种巧妙应用:就是在其内部实现子类必须执行的代码。

    以下就是在抽象类的构造函数中来初始化字段。

        class Program
    
        {
    
            static void Main(string[] args)
    
            {
    
                Employee employee = new Employee();
    
                Console.WriteLine(employee.ID);
    
                Console.ReadKey();
    
            }
    
        }
    
        public abstract class Base
    
        {
    
            private Guid _id;
    
            public Base()
    
            {
    
                this._id = Guid.NewGuid();
    
            }
    
            public Guid ID
    
            {
    
                get { return this._id; }
    
            }
    
        }
    
        public class Employee : Base
    
        {
    
            
    
        }
    

    总结:虽然抽象类不能被实例化,但可以有构造函数。由于抽象类的构造函数在实例化派生类之前发生,所以,可以在这个阶段初始化抽象类字段或执行其它与子类相关的代码。

  • 相关阅读:
    单机部署Fastfds+nginx
    day_ha配置文件
    day_1_登录接口

    表(list)
    Java基础01 ------ 从HelloWorld到面向对象
    测试V模型
    360极速模式和兼容模式区别
    初识VBS
    Bug描述规范
  • 原文地址:https://www.cnblogs.com/darrenji/p/3909144.html
Copyright © 2011-2022 走看看