java —— 類與方法

一、訪問修飾符

在類和方法中,均可使用訪問修飾符以鎖定該類或方法的被訪問權限。訪問修飾符有四種:

(一)public

同一個項目中,對所有的類可見。

(二)protected

同一個項目中,對同一個包中的類可見,對子類可見,對其他包中的類不可見。

(三)default

同一個項目中,對同一個包中的類可見,對其他包中的類不可見。

(四)private

同一個項目中,只對當前類可見。

二、static 和 this 關鍵字

(一)static

static 用于修飾類或方法,表示其為靜態類或靜態方法,在調用的過程中無需對其實例化,即可直接使用。

public class OuterSample
{public static void innermethod(){System.out.println("hello!");}public static void main(String[] args){OutSample.innermethod();}
}

該案例中,由于方法 innermethod() 用 static 修飾,在 main 方法中調用的時候無需實例化,直接用 類名.方法名 即可調用。

(二)this

this 關鍵字用于指代當前對象(this 指向對類進行實例化之后的全局變量,而不是方法中定義的局部變量),比較以下三個案例:

public class OuterSample
{	String name="Spike";		public String innermethod()   {    String name="Tom";    return name;    } 	public static void main(String[] args)    {   OuterSample os1=new OuterSample();   String x=os1.innermethod();   System.out.println(x);   }
}

本案例中沒有使用 this 關鍵字,則調用 innermethod() 時默認使用局部變量 “Tom”。?

public class OuterSample
{	String name="Spike";		public String innermethod()   {    String name="Tom";    return this.name;    } 	public static void main(String[] args)    {   OuterSample os1=new OuterSample();   String x=os1.innermethod();   System.out.println(x);   }
}

?本案例中,os1 為類 OuterSample 的一個實例化對象,this 關鍵字指向類 OuterSample 的全局變量,即 “Spike”。

public class OuterSample
{	String name="Spike";		public String innermethod()   {    this.name="Tom";    return this.name;    } 	public static void main(String[] args)    {   OuterSample os1=new OuterSample();   String x1=os1.innermethod();   System.out.println(x1);   String x2=os1.name;System.out.println(x2);}
}

?本案例中,this 同樣指向全局變量,但在方法中對全局變量進行了重新賦值,所以即使 this 指向全局變量,也是在方法 innermethod() 中被賦值為 “Tom” 的全局變量。而 x2 沒有調用方法,this 指向的仍然是方法 innermethod() 外部的全局變量,也就是“Spike”。

三、構造方法和普通方法

(一)構造方法

① 方法名與類名相同

② 沒有返回值類型

③ 不能使用 static 修飾

④ 可以有多種重載形式

(二)普通方法

普通方法名稱與類名不能相同,分為靜態方法和實例方法:

靜態方法,使用 static 修飾符,無需對類進行實例化即可調用。

實例方法,不使用 static 修飾符,調用時需要先對類進行實例化,然后用?類名.方法名 調用。

四、方法重載和方法重寫

(一)方法重載

構造方法和普通方法均可進行方法重載,也就是方法名相同,而參數數量或類型不同。

特點:同一個類,方法名相同,參數列表不同。

(二)方法重寫

?方法重寫發生在子類繼承父類的情況下,當子類需要對父類的某些方法進行重新編寫的時候,可以在子類中進行方法重寫,方法名與父類的方法名相同。

特點:不在同一個類,子類重寫父類的方法,方法名和參數列表均相同。

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

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

相關文章

Study--Oracle-03-Oracle19C--RAC集群部署

一、硬件信息及配套軟件 1、硬件設置 RAC集群虛擬機:CPU:2C、內存:9G、操作系統:30G、數據庫安裝目錄:100G 數據存儲:50G (10G*5) 共享存儲:2G (1G*2) 2…

基于 vuestic-ui 實戰教程

1. 前言簡介 Vuestic UI是一個基于開源Vue 3的UI框架。它是一個MIT許可的UI框架,提供了易于配置的現成前端組件,并加快了響應式和快速加載Web界面的開發。它最初于2021年5月由EpicMax發布,這就是今天的Vuestic UI。 官網地址請點擊訪問 體驗…

博客摘錄「 python——正則表達式(re模塊)詳解」2023年11月17日

?P<name>) 分組起別名&#xff0c;匹配到的子串組在外部是通過定義的 name 來獲取的(?Pname) 引?別名為name分組匹配到的字符串

車與網絡之間(V2N)簡介

車與網絡之間&#xff08;V2N&#xff09;簡介 一、定義與概述 V2N&#xff0c;全稱為Vehicle-to-Network&#xff0c;是指車輛與網絡之間的通信和連接技術。這種技術使得車輛能夠與互聯網進行無縫連接&#xff0c;進而實現導航、娛樂、防盜等多種應用功能。在智能交通系統領…

【Linux安全】iptables防火墻(二)

目錄 一.iptables規則的保存 1.保存規則 2.還原規則 3.保存為默認規則 二.SNAT的策略及應用 1.SNAT策略的典型應用環境 2.SNAT策略的原理 2.1.未進行SNAT轉換后的情況 2.2.進行SNAT轉換后的情況 3.SNAT策略的應用 3.1.前提條件 3.2.實現方法 三.DNAT策略及應用 1…

【大模型應用開發極簡入門】使用GPT-4和ChatGPT的編程起點:ChatCompletion詳解

文章目錄 一. 多輪對話二. 使用起點&#xff1a; ChatCompletion三. 調用模型&#xff1a;create方法1. 主要的輸入參數&#xff1a;model、message2. 對話長度和token數量管理3. 可選參數 四. ChatCompletion端點的輸出格式 本文討論如何使用GPT-4和ChatGPT背后的模型&#xf…

怎么查看項目中antd的版本

使用antd時&#xff0c;有在線參考資料&#xff0c;但是需要根據項目需要&#xff0c;選擇對應版本的參考資料。 antd在線參考資料&#xff1a; 組件總覽 - Ant Design 如何查看當前項目中antd的版本呢&#xff1f; 在項目的終端中輸入&#xff1a; npm list antd antd官網選擇…

慶余年第2季,帶你走進怎樣的世界?

《慶余年》第二季 演員陣容與幕后團隊的新組合為我們帶來了別樣的觀影體驗 他的演技真的是在線&#xff0c;其實這劇本很難搞 該搞笑的時候要搞笑&#xff0c;但也不能一直在無厘頭胡鬧 所以題主說節奏拿捏的好我也很贊同 反觀有其他幾位演員控制力就差很多 特別是某一集…

Spring:JWT

文章目錄 一、介紹 一、介紹 JWT&#xff08;JSON Web Token&#xff09;是一種開放標準&#xff08;RFC 7519&#xff09;的方法&#xff0c;用于在雙方之間安全地傳輸信息。這些信息可以是驗證、授權、信息交換等。JWT 通常被用于在客戶端和服務器之間傳遞用戶信息&#xff…

STM32H743的FDCAN使用方法(1):STM32CubeMX初始化代碼生成

0 工具準備 1.STM32CubeMX1 前言 本文介紹基于STM32CubeMX&#xff0c;使用stm32h743xi的對FDCAN2進行配置的方法。 2 初始化代碼生成 2.1 選擇FDCAN引腳 本例選擇PB5、PB6作為FDCAN2的RX、TX引腳。 2.2 選擇FDCAN時鐘源 本例選擇PLL2Q作為FDCAN時鐘源&#xff0c;頻率…

Expected Boolean, got String with value “true“.

在vue el-tree節點添加屬性expand-on-click-node"false"&#xff0c;瀏覽器控制臺提示上面的錯誤&#xff0c; 將false的雙引號去年依然提示&#xff0c;然后在expand-on-click-node"false"最前面添加冒號&#xff0c;即變成雙向綁定&#xff0c;刷新頁面…

UDP的報文結構和注意事項

UDP協議是在傳輸層的協議。 UDP無連接&#xff0c;不可靠傳輸&#xff0c;面向數據報&#xff0c;全雙工。 UDP的報文結構 學習網絡協議&#xff0c;最主要的就是報文格式。 對于UDP來說&#xff0c;應用層的數據到達&#xff0c;UDP之后&#xff0c;就會給應用層的數據報前面…

服務器端口開放,服務器端口開放命令與方法的專業闡述

在計算機網絡中&#xff0c;服務器端口的開放是確保網絡通信暢通無阻的關鍵步驟。服務器端口是服務器與外部網絡通信的入口&#xff0c;通過正確配置和開放相應的端口&#xff0c;可以實現各種網絡服務和應用的功能。 一、命令與工具 在Linux系統中&#xff0c;常用的命令和工…

Python中如何將字符串轉換成可調用的方法

字符串轉化成方法 import importlibdef find_method_by_str(method_path):"""通過字符串&#xff0c;尋找方法"""if not method_path:return Nonemethods method_path.split(".")_module importlib.import_module(".".jo…

4. C++網絡編程-TCP客戶端的實現

TCP Client網絡編程基本步驟 創建socket&#xff0c;指定使用TCP協議使用connect連接服務器使用recv/send接收/發送數據關閉socket TCP-connect連接請求 !man 2 connect #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> int connect(int sock…

邦芒簡歷:簡歷照片的藝術與真實

在美顏濾鏡與P圖技術盛行的今天&#xff0c;許多人似乎對“完美”形象有著不懈的追求。從社交平臺的自拍&#xff0c;到簡歷上的證件照&#xff0c;無一不經過精心的修飾與處理。然而&#xff0c;這種對完美的追求在求職過程中&#xff0c;是否總是起到積極的作用呢&#xff1f…

內網滲透(不出網上線CS)

目錄 CS的概述 實驗&#xff1a;不出網上線CS實驗 一&#xff1a;給PC1種馬 二&#xff1a;使用Beacon SMB去控制PC2。 三&#xff1a;將CS權限傳遞給MSF 四&#xff1a;將msf權限傳遞給CS CS的概述 cs是一款強大的控制windows木馬的工具。是目前滲透中常使用的一個工具…

一些Spring Boot直接的解釋

RequestParam() 就是從問號之后的鍵值對獲取值綁定值,這個方法用的是get方法 /fjg?namefjg http://example.com/find?productId1234GetMapping("/find") public String getProduct(RequestParam("productId") String productId) {return "Product …

fastapi中實現多個路由請求

大家伙&#xff0c;我是雄雄&#xff0c;歡迎關注微信公眾號&#xff1a;雄雄的小課堂。 前言 最近在寫機器人相關的接口&#xff0c;順手學了學python&#xff0c;發現這是個好東西&#xff0c;寫代碼效率比java要高很多&#xff0c;比如寫個詞云呀&#xff0c;寫個回調呀&am…

隨手筆記4

1、https://www.pgyer.com/app/distribution 蒲公英 移動發布二維碼