網(wǎng)站首頁 編程語言 正文
前言
在日常的程序編碼工作中,我們的最終目標(biāo)是完成公司交給自己的開發(fā)任務(wù),核心目標(biāo)是寫出好代碼。
那么什么是好代碼?
高內(nèi)聚,低耦合
想必從事編碼工作的我們,基本都聽說過這句話。那么什么樣的代碼是高內(nèi)聚,又如何低耦合呢。
今天咱們就來了解下在C#這個高級語言中,是通過那些形式來表現(xiàn)的。
在目前的高級語言中,這三個特點(diǎn)是共通的,也是我們?nèi)粘>幋a中要經(jīng)常使用的。就是封裝、繼承、多態(tài)。
我們先來看看繼承
類的繼承
通過繼承我們可以得到一個新的類,新類可以自己定義一系列方法和變量,同時擁有基類的屬性和行為。
這里的關(guān)系是基類和派生類。
需要注意的是派生類不能刪除基類的任何成員。
class Ahui:InfoBase { public string GetInfo() { return this.Name+""+this.Age; } } class InfoBase { public int Age { get; set; } public int Name { get; set; } public string Love() { return "女"; } }
上面的示例,InfoBase是屬于基類,Ahui屬于派生類,可以看到通過冒號來實(shí)現(xiàn)繼承。
繼承的成員可以被訪問,就像它們是派生類自己聲明的一樣。
目前所有類都是派生自object類,object類是唯一的非派生類,它是繼承層次結(jié)構(gòu)的基礎(chǔ)。目前沒有基類規(guī)格說明的類隱式地直接派生自類object。
注意事項
1、一個類聲明的基類規(guī)格說明中只能有一個單獨(dú)的類,叫做單繼承。
2、雖然類只能直接繼承一個基類,但是繼承的層次無限制。
目前派生類不能刪除基類的成員和函數(shù),但是可以通過派生類聲明相同的成員來屏蔽基類成員和函數(shù)。這里需要注意名稱必須相同。
class Program { static void Main(string[] args) { Ahui hui = new Ahui(); Console.WriteLine(hui.Name); Console.ReadKey(); } } class Ahui:InfoBase { public string Name = "阿姨"; public string GetInfo() { return this.Name+""+this.Age; } } class InfoBase { public int Age=27; public string Name = "ahui"; public string Love() { return "女"; } }
寄語
人生短暫,我不想去追求自己看不見的,我只想抓住我能看得見的。
總結(jié)
原文鏈接:https://blog.csdn.net/sinat_23966857/article/details/122914790
相關(guān)推薦
- 2022-11-13 ASP.NET?MVC使用Session會話保持表單狀態(tài)_實(shí)用技巧
- 2023-11-16 【Python】從列表/dataframe/pandas中刪除 nan
- 2022-11-06 Django中Migrate和Makemigrations實(shí)操詳解_python
- 2022-02-17 奇怪的小知識 - 如何清空一個數(shù)組?在不改變地址的情況下呢?
- 2022-12-24 Python中requirements.txt簡介(推薦)_python
- 2022-07-02 python之NAN和INF值處理方式_python
- 2022-08-02 Python深拷貝淺拷貝圖文示例清晰整理_python
- 2022-06-28 ASP.NET?WebAPI導(dǎo)入CSV_實(shí)用技巧
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支