C#,入門教程(29)——修飾詞靜態(static)的用法詳解

上一篇:

C#,入門教程(28)——文件夾(目錄)、文件讀(Read)與寫(Write)的基礎知識icon-default.png?t=N7T8https://blog.csdn.net/beijinghorn/article/details/124231282

static 是編程高頻詞之一。

讀了一些網文,感覺很簡單的事,說的不會話了,忍不住寫篇短文湊湊熱鬧。

你這么理解吧:

(1)靜態(類)就是共享單車,隨便騎;

(2)非靜態類就是私家車,沒有鑰匙開不了。

先看一個實例:

常見的數學函數:

Math.Sqrt,Math.Pow ....

都屬于 System 命名空間·靜態類 Math ·靜態方法。

== 屬于共享企業·共享單車·共享功能

完整的寫法是:

double r2 = System.Math.Sqrt(2.0);double p2 = System.Math.Pow(2.0,2.0);

翻譯成白話就是:

騎著 哈羅·單車·司庫拉特 或 哈羅·單車·泡妞。

微軟的程序員透露說,他們是這么寫的 :P

namespace Systen
{public static Math{public static double Sqrt(double x){...}public static double Pow(double x){...}}
}

其實把 泡妞秘籍 Pow 的代碼,完全不修改,這么寫,也沒任何問題。

namespace MySysten
{public static MyMath{public static double Sqrt(double x){...}public static double Pow(double x){...}}
}

使用:

double mp2 = MySystem.MyMath.Pow(2.0,2.0);

小結:

static 可以理解為 common class or property or function(method)。

(1)static function 的參數,一般是傳入的,一般不要用 class 的 property;

(2)static class 的 property function 都是 static 的;

(3)非 static class 的? property function 也可以是 static 的;

public NonstaticClass
{public static int TripleSum(int a, int b, int c){return a+b+c;}
}

調用:

int d = NonstaticClass.TripleSum(a, b, c);

而不是:

NonstaticClass nc = new NonstaticClass();
int d = nc.TripleSum(a, b, c);

POWER BY TRUFFER.CN
BY 315SOFT.COM?

下一篇:

C#,入門教程(30)——扎好程序的籠子,錯誤處理 try catchicon-default.png?t=N7T8https://blog.csdn.net/beijinghorn/article/details/124182386

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/696526.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/696526.shtml
英文地址,請注明出處:http://en.pswp.cn/news/696526.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2.21號qt

1.QMainWindow中常用的類 繼承于QMainWindow類,原因該類提供了QWidget沒有提供的成員函數。 菜單欄、工具欄、狀態欄、浮動窗口(鉚接部件)、核心部件 1.1 菜單欄 QMenuBar //創建菜單欄 QMenuBar 最多只能有一個 QMenuBar *mbar menu…

Hutool簡介和常用類

Hutool簡介 Hutool是一個小而全的Java工具類庫,通過靜態方法封裝,降低相關API的學習成本,提高工作效率,使Java擁有函數式語言般的優雅,讓Java語言也可以“甜甜的”。 Hutool中的工具方法來自每個用戶的精雕細琢&…

【鴻蒙 HarmonyOS 4.0】數據持久化

一、數據持久化介紹 數據持久化是將內存數據(內存是臨時的存儲空間),通過文件或數據庫的形式保存在設備中。 HarmonyOS提供兩種數據持久化方案: 1.1、用戶首選項(Preferences): 通常用于保存應用的配置信息。數據通…

android 全局異常處理封裝

app出現了問題,尤其是多線程問題,某個線程出了問題,很不好找,那是不是可以搞一個統一的處理類,將所有的異常信息都統一到一個地方呢,原本只是一個知識點,但我發現這里還可以 保存異常信息到本地…

Vue 進階系列丨實現簡易reactive和ref

Vue 進階系列教程將在本號持續發布,一起查漏補缺學個痛快!若您有遇到其它相關問題,非常歡迎在評論中留言討論,達到幫助更多人的目的。若感本文對您有所幫助請點個贊吧! 2013年7月28日,尤雨溪第一次在 GItHu…

計算機網絡Day02--物理層(一)

計算機網絡Day02–物理層 物理層基本概念 物理層考慮的是怎么才能在連接各種計算機的傳輸媒體上傳輸比特流,而不是具體的傳輸媒體 作用:盡可能屏蔽掉不同傳輸媒體和通信手段的差異 用于物流層的協議也稱為物流層規程 主要作用:解決計算機…

COCI2015-2016#1 RELATIVNOST

P6533 [COCI2015-2016#1] RELATIVNOST 題目大意 小 L L L在賣畫。這些畫分為彩色畫和黑白畫,小 L L L希望有至少 c c c個人會買走他至少一張彩色畫。 第 i i i個人至多會購買 a i a_i ai?張彩色畫或者 b i b_i bi?張黑白畫,且每個人至少購買一張畫。…

Android---Jetpack Compose學習007

Compose 附帶效應 a. 純函數 純函數指的是函數與外界交換數據只能通過函數參數和函數返回值來進行,純函數的運行不會對外界環境產生任何的影響。比如下面這個函數: fun Add(a : Int, b : Int) : Int {return a b } “副作用”(side effe…

單例模式的介紹

單例模式(Singleton)是一種創建型設計模式,它確保一個類只有一個實例,并提供全局訪問點。其核心思想是通過限制類的實例化次數,防止多個實例同時存在,從而避免了多線程競爭和資源浪費,提高了代碼…

【藍橋杯單片機入門記錄】靜態數碼管

目錄 一、數碼管概述 (1)認識數碼管 (2)數碼管的工作原理 (3)LED數碼管驅動方式-靜態顯示 二、數碼管電路圖 三、靜態數碼管顯示例程 (1)例程1:數碼管顯示某一位&a…

vue、thinkphp實現騰訊云對象存儲COS圖片上傳

環境&#xff1a; thinkphp6 vue2 vant2.12 composer安裝qcloud-sts-sdk composer require qcloud_sts/qcloud-sts-sdk獲取COS臨時id、key的sts接口 <?php declare (strict_types 1);namespace app\index\controller; use QCloud\COSSTS\Sts;class CosController {//h…

如何為PostgreSQL設置自增主鍵?

在 PostgreSQL 中&#xff0c;自增主鍵通常是通過使用 SERIAL 類型或在新版本中使用 IDENTITY 列來實現的。 1. 使用 SERIAL 類型 SERIAL 是一個自動增加的整數&#xff0c;常用于主鍵。當插入新的行時&#xff0c;PostgreSQL 會自動為這個列生成一個新的值。 ??例如 CREAT…

PYQT5-自定義事件

from PyQt5.QtCore import QEvent, QObject from PyQt5.QtWidgets import QApplication import sys# 自定義事件類 class CustomEvent(QEvent):# PYQT5 預留給用戶自定義事件類型的起點為 QEvent.User1000custom_event_type QEvent.registerEventType()# 也可以這樣寫# custom…

2024.2.22

P1162 #include<map> #include<vector> #include<iostream> #include<math.h> #include<algorithm> #include<string> using namespace std; const int N 1020; int n; int g[N][N];//標記數組 int a[N][N];//儲存數組 int dx[] { -1…

webstorm光標變成方塊解決辦法_webstorm光標變粗不能換行

webstorms光標變了 鍵盤上的insert是切換的快捷鍵&#xff0c;敲insert就可以來回切換了

回顧 | Java面向對象 多態篇

多態是面向對象編程中的一個重要概念&#xff0c;它允許不同的對象對同一消息做出不同的響應。 通過多態&#xff0c;可以通過父類或接口定義的引用變量來操作子類或實現類的對象&#xff0c;從而實現同一方法在不同對象上的不同行為。 在Java中&#xff0c;多態性主要通過繼…

雙通道并行網絡,想用哪個網絡用哪個,MATLAB代碼

本期可謂是寶藏篇&#xff01;學會本期的思想&#xff0c;幫助你分分鐘找到創新點&#xff0c;且不與別人重復&#xff01; 本期采用MATLAB代碼&#xff0c;實現一種“基于格拉姆角場與并行CNN的故障診斷方法”。該方法的具體實現可以參考文獻&#xff1a; [1]李宗源,陳謙,錢…

React native更改包名后,啟動app的activity包名不生效問題

這篇文章本不算記錄的&#xff0c;因為實際開發中&#xff0c;類似這種小問題會有很多很多&#xff0c;因為導致問題的原因千奇百怪&#xff0c;解決方案也不盡相同&#xff0c;所以也都沒有記錄。 但今天看到我10年寫的問題解決小文章&#xff0c;被網友收藏了&#xff0c; 感…

普中51單片機學習(EEPROM)

EEPROM IIC串行總線的組成及工作原理 I2C總線的數據傳送 數據位的有效性規定 I2C總線進行數據傳送時&#xff0c;時鐘信號為高電平期間&#xff0c;數據線上的數據必須保持穩定&#xff0c;只有在時鐘線上的信號為低電平期間&#xff0c;數據線上的高電平或低電平狀態才允許…

分享WebGL物體三維建模

界面效果 代碼結構 模型素材類似CT (Computed Tomography)&#xff0c;即電子計算機斷層掃描&#xff0c;它是利用精確準直的X線束、γ射線、超聲波等&#xff0c;與靈敏度極高的探測器一同圍繞物體的某一部位作一個接一個的斷面掃描。 坐標系統 渲染流程 渲染流程是個將之前準…