欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#中私有構(gòu)造函數(shù)的特點和用途實例解析

 更新時間:2014年08月13日 10:10:20   投稿:shichen2014  
這篇文章主要介紹了C#中私有構(gòu)造函數(shù)的特點和用途,需要的朋友可以參考下

本文以實例形式分析私有構(gòu)造函數(shù)的特點,以及在何種情況下使用私有構(gòu)造函數(shù)。相信對于大家更好的理解C#中的私有構(gòu)造函數(shù)有一定的促進作用。具體如下:

一、帶私有構(gòu)造函數(shù)的類不能被繼承

在Animal類中聲明一個私有構(gòu)造函數(shù),讓Dog類來繼承Animal類。

  public class Animal
  {
    private Animal()
    {
      Console.WriteLine("i am animal");
    }
  }
  public class Dog : Animal
  {
    
  }

運行程序,生成解決方案,報錯如下圖所示:

二、帶私有構(gòu)造函數(shù)的類不能被實例化

運行如下測試代碼:

  class Program
  {
    static void Main(string[] args)
    {
      Animal animal = new Animal();
    }
  }
  public class Animal
  {
    private Animal()
    {
      Console.WriteLine("i am animal");
    }
  }

程序運行后生成解決方案,報錯如下圖所示:

三、私有構(gòu)造函數(shù)的應(yīng)用

有些時候,我們不希望一個類被過多地被實例化,比如有關(guān)全局的類、路由類等。這時候,我們可以為類設(shè)置構(gòu)造函數(shù)并提供靜態(tài)方法。

  class Program
  {
    static void Main(string[] args)
    {
      string str = Animal.GetMsg();
      Console.WriteLine(str);
      Console.ReadKey();
    }
  }
  public class Animal
  {
    private Animal()
    {
      Console.WriteLine("i am animal");
    }
    public static string GetMsg()
    {
      return "Hello World";
    }
  }

總結(jié):一旦一個類被設(shè)置成私有構(gòu)造函數(shù),就不能被繼承,不能被實例化,這種情況下,通常為類提供靜態(tài)方法以供調(diào)用。

相關(guān)文章

  • C# 在PDF文檔中創(chuàng)建表格的實現(xiàn)方法

    C# 在PDF文檔中創(chuàng)建表格的實現(xiàn)方法

    表格能夠一目了然的讓用戶看到數(shù)據(jù)信息,使信息顯得有條理化,那么在pdf類型的文檔中如何來添加表格并對表格進行格式化操作呢?下面小編給大家?guī)砹薈# 在PDF文檔中創(chuàng)建表格的實現(xiàn)方法,需要的朋友參考下吧
    2017-12-12
  • C#事件用法實例淺析

    C#事件用法實例淺析

    這篇文章主要介紹了C#事件用法,以實例形式分析了C#中事件的定義、觸發(fā)及處理相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • C#怎么給PDF添加背景圖片

    C#怎么給PDF添加背景圖片

    無論是辦公還是日常生活中都經(jīng)常會用到,很多時候,PDF文件的背景色都是白色,看多了難免覺得累,更換PDF的背景不僅可以讓眼睛看起來更舒服,還可以讓PDF文件看上去更美觀。這篇文章我主要寫的是如何使用C# 給PDF文件添加圖片背景
    2016-02-02
  • Unity3D制作序列幀動畫的方法

    Unity3D制作序列幀動畫的方法

    這篇文章主要為大家詳細(xì)介紹了Unity3D制作序列幀動畫的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • C#表達(dá)式樹基礎(chǔ)教程

    C#表達(dá)式樹基礎(chǔ)教程

    這篇文章介紹了C#表達(dá)式樹的基礎(chǔ)教程,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • 淺析c#范型中的特殊關(guān)鍵字where & default

    淺析c#范型中的特殊關(guān)鍵字where & default

    以下是對c#范型中的特殊關(guān)鍵字where和default進行了詳細(xì)的介紹,需要的朋友可以過來參考下
    2013-09-09
  • C#寫入XML文檔

    C#寫入XML文檔

    這篇文章介紹了C#寫入XML文檔的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • C#完成word文檔打印的方法

    C#完成word文檔打印的方法

    在日常工作中,我們可能常常需要打印各種文件資料,比如word文檔。對于編程員,應(yīng)用程序中文檔的打印是一項非常重要的功能,也一直是一個非常復(fù)雜的工。這篇文章主要介紹了C#完成word文檔打印的方法,需要的朋友可以參考下
    2016-10-10
  • C#實現(xiàn)網(wǎng)頁畫圖功能

    C#實現(xiàn)網(wǎng)頁畫圖功能

    這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)網(wǎng)頁畫圖功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 淺談C#中的常量、類型推斷和作用域

    淺談C#中的常量、類型推斷和作用域

    這篇文章主要介紹了C#中的常量、類型推斷和作用域,有需要的朋友可以參考一下
    2013-12-12

最新評論