国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java學習路線(8)——面向對象基礎(2)

這篇具有很好參考價值的文章主要介紹了Java學習路線(8)——面向對象基礎(2)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、static關鍵字
概念: static是靜態(tài)的意思,可以修飾成員變量和成員方法。當修飾成員變量時,在內存中只存儲一份,可以被共享訪問、修改。當修飾成員方法時,可以被共享訪問,也被稱為公共方法。

  • 靜態(tài)成員變量
    訪問格式: 【類名.靜態(tài)成員變量】或【對象名.靜態(tài)成員變量】
    作用: 主要用于共享數(shù)據(jù)的存儲,例如在線人數(shù)場景。
    內存原理:
    main方法加載時,若遇到static修飾的變量,則同步在堆內存中開辟類靜態(tài)數(shù)據(jù)區(qū)并存儲變量值;若當前類中沒有靜態(tài)變量,則在加載類時,同步開辟類靜態(tài)數(shù)據(jù)空間。
    開辟完成后,類靜態(tài)變量空間隨程序的結束而回收。
    Java學習路線(8)——面向對象基礎(2)
  • 靜態(tài)成員方法
    訪問格式: 【類名.靜態(tài)成員方法()】或【對象名.靜態(tài)成員方法()】
    作用: 主要用于公共方法的調用,當不需要調用實例成員變量時,調用靜態(tài)方法。
    內存原理: 與靜態(tài)成員變量相同,區(qū)別是靜態(tài)方法存儲在方法區(qū)中。

使用注意事項

1、 靜態(tài)方法只能訪問靜態(tài)成員,不能直接訪問實例成員。(因為靜態(tài)修飾的成員會優(yōu)先加載,實例成員只有在聲明對象時才會加載,JVM會訪問不到實例成員而報錯。)
2、實例方法可以訪問靜態(tài)成員,也可以訪問實例成員。(因為靜態(tài)成員優(yōu)先于實例成員加載,實例成員同步對象創(chuàng)建,所以實例方法可以直接訪問靜態(tài)成員。)
3、靜態(tài)方法不可以出現(xiàn)this關鍵字。(因為this關鍵字代表當前對象,屬于實例成員,所以不可以出現(xiàn)。)

static關鍵字一些使用場景

  • 工具類構建
    概念: 工具類是指將工具方法靜態(tài)化封裝到類中,這樣開發(fā)人員就能直接使用工具類協(xié)助開發(fā)或用戶功能模塊的拼裝。
    注意: 為提高工具類的健壯性,建議將構造器私有化。

  • 代碼塊
    (1)靜態(tài)代碼塊:
    格式: 【static{ … }】
    特點: 通過static關鍵字修飾,隨類的加載而加載,自動觸發(fā)并只執(zhí)行一次。
    作用場景: 類加載時的靜態(tài)數(shù)據(jù)初始化。
    (2)構造代碼塊
    格式: 【{ … }】
    特點: 構造器調用時優(yōu)先執(zhí)行的代碼。
    作用場景: 初始化實例資源。

  • 單例設計模式
    設計模式的概念: 設計模式是一系列解決方案中最優(yōu)的解決方案,20多種設計模式對應20多種不同的軟件開發(fā)中所遇到的問題。
    單例模式的概念: 單例模式是指一個類只產(chǎn)生一個對象進行使用。
    單例模式(1)設計步驟:
    1、定義一個類,把構造器私有化。
    2、定義一個靜態(tài)變量存儲對象。

/*單例類*/
public class SingleInstance{
	/*單例靜態(tài)對象*/
	public static SingleInstance instance = new SingleInstance();
	
	/*單例私有化構造器*/
	private SingleInstance(){}
}

單例模式(2)設計步驟
1、定義一個類,把構造器私有化。
2、定義一個靜態(tài)變量存儲對象并私有化。
3、提供獲取單例對象的方法。

/*單例類*/
public class SingleInstance{
	/*單例私有化靜態(tài)對象*/
	private static SingleInstance instance;
	
	/*單例私有化構造器*/
	private SingleInstance(){}
	
	/*單例對象獲取*/
	public static SingleInstance getInstance(){
		if(instance == null){
			instance = new SingleInstace();
		}
		return instance;
	}
}

Java面向對象特性(2):繼承

  • extends關鍵字: 這是Java提供的用于類與類之間建立父子關系的關鍵字。

  • 使用格式: 【public class Student extends People { }】

  • 類與類之間的關系: Student稱為子類(或派生類),People稱為父類(或基類或超類)

  • 作用: 當子類繼承父類后,可以直接使用父類公共屬性和方法。

  • 使用繼承的原因: 繼承特性可以提高代碼復用。

  • 繼承的設計規(guī)范: 子類的共性成員在父類中定義,獨有成員在子類中定義。(如果父類提供原始基因,子類可能產(chǎn)生基因變異。)

  • 繼承的特點

    • 子類能直接繼承并訪問父類公開成員(靜態(tài)成員屬于共享數(shù)據(jù)),但不能繼承構造器。
    • Java僅支持單繼承,一個類只能繼承一個父類,但支持多層繼承,即有子孫后代類。
    • Object類是Java所有類的父類。
  • 內存機制
    當程序開始加載子類對象時,會在堆內存中開辟包含父類和子類的空間,當使用時子類調用父類方法時,是在同一塊內存中的父類空間查找方法。
    Java學習路線(8)——面向對象基礎(2)

  • 繼承后的特性
    子類訪問成員原則: 就近原則
    1、子類局部范圍找
    2、從子類成員找
    3、后從父類成員找
    4、找不到就報警
    注意: 如果子類中出現(xiàn)重名成員,則優(yōu)先使用子類。

  • super、this關鍵字
    1、super:是指代父類對象。
    2、this:是指代當前對象。

  • 繼承時的構造器創(chuàng)建過程
    1、默認調用父類無參構造器,調用語句是【super();】,若想要調用父類的有參構造器,調用語句是【super(…);】。(因為繼承原因,優(yōu)先開辟父類空間才能讓子類獲取父類成員)
    2、調用子類構造器。

  • 方法重寫
    概念: 當子類出現(xiàn)父類相同的方法名時,則子類方法被稱為重寫的方法。
    使用場景: 當子類需要父類方法,但父類方法不滿足子類需求,則子類重寫父類方法。

  • @Override注解
    概念: 用于重寫校驗方法
    作用: 提高程序可讀性

  • 重寫方法的注意事項與要求:
    1、重寫方法的名稱、形參列表必須與模板方法一致(除了代碼塊,都不變)。
    2、私有方法不能重寫。
    3、子類重寫父類方法時,訪問權限必須大于或等于父類(權限自低到高:private<protected<public)
    4、子類不能重寫父類靜態(tài)方法,否則報錯。(共享方法并不與子類方法不沖突)文章來源地址http://www.zghlxwxcb.cn/news/detail-454249.html

到了這里,關于Java學習路線(8)——面向對象基礎(2)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Java基礎之static關鍵字

    Java基礎之static關鍵字

    友情提醒 先看文章目錄,大致了解文章知識點結構,點擊文章目錄可直接跳轉到文章指定位置。 隨著類的加載而加載,優(yōu)先于對象存在,對所有對象共享,可以被類名直接調用 ① 靜態(tài)代碼塊static修飾的代碼塊,直接寫在類中的代碼塊。 在類加載的時候執(zhí)行,只執(zhí)行一次,

    2024年02月09日
    瀏覽(28)
  • java面向對象——繼承以及super關鍵字

    java面向對象——繼承以及super關鍵字

    在 同?類 中,存在?法名相同,參數(shù)列表不同(個數(shù)、類型或順序不同)的?法互為重載。 在 繼承關系 中,?類聲明?個繼承??類的?法名相同、參數(shù)列表相同,返回值類型?致,訪問修飾符相同或 變?,拋出異常相同或縮?的?法稱為重寫。 重載是編譯時多態(tài),重寫

    2024年02月12日
    瀏覽(16)
  • Java面向對象——多態(tài)、Object類、instanceof關鍵字以及final關鍵字

    Java面向對象——多態(tài)、Object類、instanceof關鍵字以及final關鍵字

    總之,多態(tài)是面向對象編程中一個非常重要的概念,通過它可以實現(xiàn)統(tǒng)一的接口來操作不同的對象,提高代碼的可讀性和可維護性。在實際編程中,多態(tài)性的使用可以使代碼更加靈活和擴展性更強。方法重寫是實現(xiàn)多態(tài)的基礎。 重寫如下所示 關于hashCode方法的重寫: 重寫t

    2024年02月12日
    瀏覽(114)
  • Java 面向對象 03 就近原則和this關鍵字

    Java 面向對象 03 就近原則和this關鍵字

    對于起名字需要見名知意,所以這個String n 不太合適: 但是如果將n改為name,會與第五行代碼的name重復: 運行代碼發(fā)現(xiàn),獲取后的姓名為默認值,是null 引入就近原則: 此處打印的是age=10,但是如果想使用成員位置的age ,應該使用this 代碼: 運行結果: 使用this關鍵

    2024年01月21日
    瀏覽(17)
  • Java 基礎進階篇(一)——— static 靜態(tài)關鍵字與單例模式

    Java 基礎進階篇(一)——— static 靜態(tài)關鍵字與單例模式

    static:代表靜態(tài)的意思,可以修飾成員變量,可以修飾成員方法。 static 修飾方法之后稱為 靜態(tài)方法(類方法) ,修飾成員變量之后稱為 靜態(tài)成員變量(類變量) 。 static 修飾后的成員變量, 可以被類的所有對象共享 (訪問、修改) 。 靜態(tài)成員變量 實例成員變量 概述 有

    2024年02月01日
    瀏覽(47)
  • 我在VScode學Java類與對象(Java顯式參數(shù)和隱式參數(shù)、靜態(tài)方法+main方法、Java訪問修飾符、static關鍵字、Java的包、對象數(shù)組)第三輯

    我在VScode學Java類與對象(Java顯式參數(shù)和隱式參數(shù)、靜態(tài)方法+main方法、Java訪問修飾符、static關鍵字、Java的包、對象數(shù)組)第三輯

    我的個人博客主頁:如果’\\\'真能轉義1??說1??的博客主頁 關于Java基本語法學習----可以參考我的這篇博客:《我在VScode學Java》 方法會操作對象并訪問他們的實例字段。 在Java中,顯式參數(shù)和隱式參數(shù)是方法調用中的兩種不同類型的參數(shù)。 注釋: 第7行: sum 方法的參數(shù)

    2024年02月16日
    瀏覽(115)
  • instanceof、對象類型轉化、static關鍵字

    instanceof、對象類型轉化、static關鍵字

    instanceof是判斷一個對象是否與一個類有關系的 ? 先看引用類型,再看實際類型 * 例子:obj instanceof A 先看obj的類型是否與A有關聯(lián),無關聯(lián)則報錯,有關聯(lián)則判斷obj的實際類型 因為obj的實際類型是son,所以String類與他無關,所以返回false 對象類型轉換: 發(fā)生在父子之間

    2024年02月02日
    瀏覽(26)
  • java基礎入門-05-【面向對象進階(static&繼承)】

    java基礎入門-05-【面向對象進階(static&繼承)】

    類的定義格式如下: 例如: 例如: 1.3.1 封裝的步驟 1.使用 private 來修飾成員變量。 2.使用 public 修飾getter和setter方法。 1.3.2 封裝的步驟實現(xiàn) private修飾成員變量 public修飾getter和setter方法 1.4.1 構造方法的作用 在創(chuàng)建對象的時候,給成員變量進行初始化。 初始化即賦值的意

    2024年02月03日
    瀏覽(24)
  • Java 學習路線:基礎知識、數(shù)據(jù)類型、條件語句、函數(shù)、循環(huán)、異常處理、數(shù)據(jù)結構、面向對象編程、包、文件和 API

    Java 是一種由 Sun Microsystems 于 1995 年首次發(fā)布的編程語言和計算平臺。Java 是一種通用的、基于類的、面向對象的編程語言,旨在減少實現(xiàn)依賴性。它是一個應用程序開發(fā)的計算平臺。Java 快速、安全、可靠,因此在筆記本電腦、數(shù)據(jù)中心、游戲機、科學超級計算機、手機等領

    2024年03月24日
    瀏覽(39)
  • Java static 關鍵字

    Java 中的 static 是一個非常重要的概念,它可以用來修飾變量、方法和代碼塊。 static 用于修飾類的成員,包括變量、方法和代碼塊。使用 static 修飾的成員被稱為靜態(tài)成員,它們屬于類而不是對象,可以被類的所有實例共享。 1. 靜態(tài)變量 使用 static

    2024年02月11日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包