關(guān)于C# 類的封裝詳情
1、前言
法存取數(shù)據(jù)。除此之外,還可以控制數(shù)據(jù)的存取方式。在面向?qū)ο缶幊讨校蠖鄶?shù)都是以類作為數(shù)據(jù)封裝的基本單位。類將數(shù)據(jù)和操作數(shù)據(jù)的方法結(jié)[成一個單位。設(shè)計(jì)類時,不希望直接存取類中的數(shù)據(jù),而是希望通過方法來存取數(shù)據(jù)。這樣就可以到封裝數(shù)據(jù)的目的,方便以后的維護(hù)升級,也可以在操作數(shù)據(jù)時多一層判斷。
此外,封裝還可以解決數(shù)據(jù)存取的權(quán)限問題,可以使用封裝將數(shù)據(jù)隱藏起來,形成一個封閉的問,然后可以設(shè)置哪些數(shù)據(jù)只能在這個空間中使用,哪些數(shù)據(jù)可以在空間外部使用。一個類中包含敏感數(shù)據(jù),有些人可以訪問,有些人不能訪問,如果不對這些數(shù)據(jù)的訪問加以限制,后果將會非常嚴(yán)所以在編寫程序時,要對類的成員使用不同的訪問修飾符,從而定義它們的訪問級別。
封裝的目的是增強(qiáng)安全性和簡化編程,使用者不必了解具體的實(shí)現(xiàn)細(xì)節(jié),而只是要通過外部接口這一特定的訪問權(quán)限來使用類的成員。如充電器,它是將220V的電源經(jīng)過降壓整流濾波后,用導(dǎo)線與電池相連,然后進(jìn)行充電。而降壓整流濾波這一過程就相當(dāng)于類的封裝。
2、實(shí)例
【例1】 創(chuàng)建一個控制臺應(yīng)用程序,其中自定義一個MyClass
類,該類用來封裝加數(shù)和被加數(shù)屬性。然后自定義一個Add
方法,該方法用來返回該類中兩個int
屬性的和。Program
主程序類中,實(shí)例化自定義類的對象,并分別為MyClass
類中的兩個屬性賦值。最后調(diào)用 MyClass
類中的自定義方法 Add返回兩個屬性的和。
代碼如下:
class MyClass //自定義類,封裝加數(shù)和被加數(shù)屬性 { prvate intx=0: //定義int型變量,作為加數(shù) private int y = 0; //定義int型變量,作為被加數(shù) ///<summary> ///加數(shù) ///<Summry> publie int x { get {return x; } set { x =value; } } public int y //被加數(shù) get { return y; } set { y * value; } } public int Add() //求和 { retum x+Y } class Program { static void Main(string(] args) { MyClass myclass u new MyClass(); //實(shí)例化 MyClass 的對象 myclass.x=3; //為 MyClass 類中的屬性默值 myclass.Y =5; //為 MyClass 類中的屬性賦值 Console.WriteLine(myclass.Add()): //調(diào)用 MyClass 類中的 Add 方法求和 Console.ReadLine(); } }
運(yùn)行結(jié)果為 8
到此這篇關(guān)于關(guān)于C# 類的封裝詳情的文章就介紹到這了,更多相關(guān)C# 類的封裝內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于C#中使用Oracle存儲過程返回結(jié)果集的問題
Oracle中可以使用游標(biāo)(Cursor)對數(shù)據(jù)集進(jìn)行操作,但在存儲過程輸出參數(shù)中直接使用Cursor錯誤,下面小編給大家?guī)砹薈#中使用Oracle存儲過程返回結(jié)果集的問題,感興趣的朋友一起看看吧2021-10-10C# 實(shí)現(xiàn)視頻監(jiān)控系統(tǒng)(附源碼)
這篇文章主要介紹了C# 如何實(shí)現(xiàn)視頻監(jiān)控系統(tǒng),幫助大家更好的理解和使用c#,感興趣的朋友可以了解下2021-02-02C# IP地址與整數(shù)之間轉(zhuǎn)換的具體方法
這篇文章介紹了C# IP地址與整數(shù)之間轉(zhuǎn)換的具體方法,有需要的朋友可以參考一下2013-10-10C#使用Objects?Comparer進(jìn)行對象比較
本文主要介紹了C#使用Objects?Comparer進(jìn)行對象比較,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07