zoukankan      html  css  js  c++  java
  • C#基本语法复习-创建接口和定义抽象类

    定义接口:

      在接口中要按照与类一样的方式声明方法,只是不能够指定任何访问修饰符,要将方法的主体换成一个分号,接口默认的访问类型是public;

    interface a{
    int b();
    }

    实现接口:

      实现一个接口时,必须保证每个方法都完全匹配与他对应的接口中的方法,方法名和返回类型完全匹配,所有参数包括ref或out都完全,匹配使用接口名作为前缀,这称为显示接口实现,显示接口实现时,方法为私有的,只有采用该接口引用该对象的实例才能实现对方法的访问。采用隐式实现时,用于实现接口中的所有方法都必须具有public可访问性。当一个类在实现继承时同时又实现一个接口则基类在前,接口在后。实现接口时不能加上override关键字。

    interface Ia{
    void a();
    }
    
    class b:Ia{
      public void a(){}  
    }

    接口的限制:

      不能再接口重定义任何字段;

      不能在接口中定义任何构造器;

      不能再接口中构建任何的析构器;

      不能再任何方法中指定访问修饰符;

      不能在接口中嵌套任何类型;

      接口能从接口继承,但是不允许从结构或类中继承一个接口;

    抽象类:

      为了明确声明不允许创建某各类的实例,必须将那个类显示的声明为抽象类,使用abstract关键字完成;

    抽象方法:

      采用abstract修饰方法,方法不能够有主体,且方法不能为私有的,这点同virtual相似,在实现抽象方法时同实现接口类似,要使用与abstract相同的访问级别,要使用override关键字;抽象方法只能出现在抽象类中;

    密封类:

      被密封的类不能作为基类使用,使用关键字sealed来实现;

    密封方法:

      密封方法是不能够重写的方法,只能密封一个重写的方法,将方法声明为sealed override;

  • 相关阅读:
    java socket编程
    http协议之request
    Javaweb---Servlet过滤器
    Android -- startActivityForResult-------&&&----setResult
    javaWeb---文件上传(commons-FileUpload组件)
    如何人没有十根手指,那么人类使用的进制还是10进制吗?
    linux运维、架构之路-MySQL日志(三)
    linux运维、架构之路-xtrabackup
    linux运维、架构之路-MySQL(二)
    SDN第三次作业
  • 原文地址:https://www.cnblogs.com/hanshuidecangsanggan/p/4390416.html
Copyright © 2011-2022 走看看