zoukankan      html  css  js  c++  java
  • c#中的partial关键字(转)

    c#中的partial关键字

    Partial:
         这是C#2.0的新特性 Partial关键字起到把一个class分段组合作用,能用于多个接口或一个继承

    代码片断:

    namespace Com.TommyLib
    {
        public interface A
        {
            void A_Fun1();
            void A_Fun2();
        }
    }

    //新建B.cs

    namespace Com.TommyLib
    {
        public partial class B
        {
            public B()
            {

            }
        
        }


        public partial class B : A //这里用Partial 分段加入B.cs 有 interface A接口
        {
             public void A_Fun1()
            {
                throw new NotImplementedException();
            }

            public void A_Fun2()
            {
                throw new NotImplementedException();
            }

       }
    }

    //新建C.cs

    namespace Com.TommyLib
    {
        public class C
        {
            public C()
            {
              
            }

            protected void C_Fun()
            {
                Console.WriteLine("C_Fun");
            }

            public void C_Fun1()
            {
                Console.WriteLine("C_Fun2");
            }
        }

        public class D
        {

        }

        public interface E
        {
            void E_Fun();
        }


        public partial class B:C //partial 分段 class B 这里继承了 class C
        {
            public void B_Fun()
            {
                Console.WriteLine("B_FUN");
                C_Fun();
            }
        }

    /*

    //不能继承多个类,B继承了class C,不能继承classD ,遵循C#不能多重继函的规定

       public partial class B : D
        {

        }

    */


        public partial class B : E //可以是多重接口,这里class B 有 interface E接口
        {


            #region E Members

            public void E_Fun()
            {
                throw new NotImplementedException();
            }

            #endregion
        }

    }

    A.cs.B.cs C.cs 三个文件有二个interface.三个class ,class B 有 A,E两个接口.继承于class C.

    C#2.0 partial关键字能够一个class 文件分成几部分写.遵循C#不可多重继承但可以有多个接口的法则.

  • 相关阅读:
    【转】浅析Linux中的零拷贝技术
    我们使用 Kafka 生产者在发消息的时候我们关注什么(Python 客户端 1.01 broker)
    【转】Python 访问 HDFS
    HIVE 乱码以及 HUE SQL 语句兼容性的记录(遇到应该会一直更新)
    Kafka 深入核心参数配置
    【转】Hive 修改 table、column
    Redash(开源轻量级商业智能) 生产环境部署及实践 (without docker)
    【转】Linux开机启动管理---systemd使用
    Pyspark 最近使用的一些有趣姿势的梳理
    使用jquery操作select(获取选中option的值等)
  • 原文地址:https://www.cnblogs.com/coolsundy/p/3776664.html
Copyright © 2011-2022 走看看