• 抽象类


    namespace t1
    {
        
    public abstract class myClass //不能被实例化
        {
            
    public myClass() //总会被调用,否则无法创建带参构造函数
            {
                MessageBox.Show(
    "基类的无参构造函数!");
            }
            
    public myClass(int a) //要调用myClass(int a) 则必须“显式调用”,即在派生类中写成:public test(int a):base(a)
            {
                MessageBox.Show(
    "{基类a!}");
            }
        }

        
    public class test : myClass
        {
            
    public test()
            {
                MessageBox.Show(
    "派生类的无参构造函数!");
            }
            
    public test(int a)
            {
                MessageBox.Show(
    "{派生类a!}");
            }
        }
    }

    test t1=new test();
    则输出: 基类的无参构造函数!
               派生类的无参构造函数!

    test t2=new test(1);
    则输出: 基类的无参构造函数!
               派生类a!

    若写成如下:显示调用
    public test(int a):base(a)
            {
                MessageBox.Show("{派生类a!}");
            }
    test t3=new test(1);
    则输出: 基类a!
               派生类a!


    abstract用来修饰抽象类,表示该类只能作为父类被用于继承,而不能进行对象实例化。


     

  • 相关阅读:
    mongodb删除指定字段
    nodejs地理坐标转换
    浅谈对腾讯云微信小程序解决方案服务端的理解(主要针对信道服务)
    利用Django进行微信支付接口的开发
    SpringBoot常用注解
    构建一个敏感词字典树
    Java异常统一处理
    [一天一个小知识]instanceof
    [总结]实现表格中对checkbox的操作
    小程序的数据绑定
  • 原文地址:https://www.cnblogs.com/perfect/p/1207673.html
Copyright © 2020-2023  润新知