欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

【C#】封裝的作用及實現方法

admin
2025年2月28日 16:14 本文熱度 1326

封裝(Encapsulation)是將對象的狀態(數據)和行為(方法)結合在一起,并通過訪問修飾符限制對這些數據和行為的訪問。

封裝的主要目的是為了保護對象的內部狀態和實現細節,從而提供更好的數據控制和安全性。

封裝允許類將數據(字段)隱藏在類的內部,通過公開的方法(接口)來操作這些數據。

這樣,外部代碼無法直接訪問不應該被直接修改或查看的內部數據。

定義私有字段將類的字段設為private,限制它們在類外部的訪問。

提供公共屬性通過public屬性(getter和setter)來允許外部訪問和修改私有字段。

使用方法操作數據:可以提供公共方法以更復雜的方式操作數據,確保數據的一致性和有效性。

說白了就是在類中定義私有屬性,然后將私有屬性封裝在一個公有的屬性中,外部通過訪問這個公有的屬性來修改私有屬性的值,并且可以判斷外部給定這個共有屬性的值是否符合私有屬性的要求從而給出判斷。

如:在Motor類中定義私有屬性id,name,status。然后將其封裝在公有的屬性Id,Name,Status中。其中get為設置屬性可讀,set為設置屬性可寫

對status所接收的值做限制,如果接收到的輸入值不是正轉或者反轉則賦值為:故障。

namespace _013_封裝{    internal class Motor    {        //通過private將屬性私有化,通過公有化的方法進行操作        //private只在本類中使用        private int id;        private string name;        private string status;        //公有化get/set訪問器                public int Id         {            get { return id; } //設置屬性可讀            set { id = value; }//設置屬性可寫        }        public string Name        {            get { return name; }            set { name = value; }        }        public string Status        {            get { return status; }            //訪問流程-先執行主程序中motor.Status = "..";            //然后調用Status中的set訪問器,將".."傳給value            //如果輸入的內容正確,經value傳給private中的ststus,否則給出提示            set             {                if (value.Equals("正轉") || value.Equals("反轉") || value.Equals("靜止"))                    status = value;                else                    status = "電機故障";            }        }        public void MotorStatue()        {            MessageBox.Show($"電機編號:{id},電機名稱:{name},電機狀態:{status}");        }    }}
通過對類中public封裝屬性賦值來修改類中private屬性中的值。
namespace _013_封裝{    //封裝(Encapsulation)是將對象的狀態(數據)和行為(方法)結合在一起,    //并通過訪問修飾符限制對這些數據和行為的訪問。    //封裝的主要目的是為了保護對象的內部狀態和實現細節,從而提供更好的數據控制和安全性。
    //封裝允許類將數據(字段)隱藏在類的內部,通過公開的方法(接口)來操作這些數據。    //這樣,外部代碼無法直接訪問不應該被直接修改或查看的內部數據。
    //定義私有字段:將類的字段設為private,限制它們在類外部的訪問。    //提供公共屬性:通過public屬性(getter和setter)來允許外部訪問和修改私有字段。    //使用方法操作數據:可以提供公共方法以更復雜的方式操作數據,確保數據的一致性和有效性。    public partial class 封裝 : Form    {        public 封裝()        {            InitializeComponent();        }
        private void btEnc_Click(object sender, EventArgs e)        {            Motor motor = new Motor();            motor.Id = 1;            motor.Name = "行走";            motor.Status = "12124";            motor.MotorStatue();        }    }}

訪問流程:

1)先執行主程序中motor.Status = "..";

2)然后調用Status中的set訪問器,將".."傳給value

3)判斷如果輸入的內容正確,經value傳給private中的ststus,否則給出提示


該文章在 2025/2/28 16:15:17 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved