程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 輕松進修C#的密封類

輕松進修C#的密封類

編輯:C#入門知識

輕松進修C#的密封類。本站提示廣大學習愛好者:(輕松進修C#的密封類)文章只能為提供參考,不一定能成為您想要的結果。以下是輕松進修C#的密封類正文


密封類概述
       其實不是一切的類都可以被繼續,C#說話中就是密封類。在C#說話中我們可以把類聲明為sealed。這表現不克不及繼續該類,假如想要繼續那末編譯器確定會報錯。在把類或辦法標志為sealed時,最能夠湧現的情況時:假如要對庫,類或本身編寫的其他類停止操作,則重寫某些功效會招致編譯毛病。也能夠因貿易緣由把類或辦法標志為sealed,以防第三方違背注冊協定的方法擴大該類。然則在普通情形下,在把類或辦法標志為sealed時要當心,由於這麼做會限制它的應用。即便不願望它能繼續一個類或重寫類的某個成員,仍有能夠在未來的某個時辰,有人會碰到沒有預感到的情況。.NET基類庫年夜量應用了密封類,使願望從這些類派生出本身的類的第三方開辟人員沒法拜訪這些類。
       密封類的聲明格局為:
       拜訪潤飾符  sealed  class  類名:基類或接口
       {
               類體
       }
       個中拜訪潤飾符,基類或接口都是可選的。
       密封辦法概述
       當實例辦法聲明包括sealed潤飾符時,稱辦法為密封辦法。假如實例辦法聲明包括sealed潤飾符,則它必需包括override潤飾符。應用sealed潤飾符可以避免派生類進一步重寫該辦法。要在辦法中應用sealed症結字,必需如今基類大將其聲明為重寫。假如基類上不願望有重寫的辦法或屬性,就不要將其聲明為virtual。
       拜訪潤飾符  sealed  override 辦法稱號(參數列表)
      {
             辦法體
      }
      個中拜訪潤飾符,參數列表都是可選的。
      來看看實例

<span >using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
 
namespace qq 
{ 
  class class1 
  { 
    public virtual void seaText() 
    { 
      Console.WriteLine("這是一個未密封的辦法!"); 
    } 
  } 
  sealed class class2 : class1 
  { 
    public sealed override void seaText() 
    { 
      Console.WriteLine("這是一個密封的辦法!"); 
    } 
  } 
  /*class class3 : class2//密封類不克不及被繼續 
  { 
    public override void seaText()//不克不及重寫密封辦法 
    { 
      Console.WriteLine("這是一個不克不及運轉的辦法!"); 
    } 
  }*/ 
  class Program 
  { 
    static void Main(string[] args) 
    { 
      class2 c2 = new class2(); 
      c2.seaText(); 
      Console.ReadLine(); 
    } 
  } 
}</span> 

很簡略得出的輸入成果:這是一個密封的辦法

<span >using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
 
namespace qq 
{ 
  sealed class Person 
  { 
    public void print_Person_name() 
    { 
      Console.WriteLine("張三"); 
    } 
  } 
  class Student : Person//密封類不克不及被繼續 
  { 
  } 
  class Program 
  { 
    static void Main(string[] args) 
    { 
      Student s1 = new Student(); 
      s1.Print_Person_name();//不克不及挪用密封類的辦法 
      Console.ReadLine(); 
    } 
  } 
}</span> 

這是一個毛病的實例,在我們應用密封類的時刻不克不及湧現如許的情形,再者就是如許的症結字我們普通要罕用。

以上就是關於C#的密封類的全體內容引見,願望對年夜家的進修有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved