Java內部類、枚舉類、注解類

Java 是一種面向對象的編程語言,它支持多種類型的類,包括內部類、枚舉類和注解類

一、內部類(Inner Class):

內部類是定義在另一個類內部的類。它可以訪問外部類的成員(包括私有成員),而外部類也可以訪問內部類的成員。內部類可以分為四種類型:

**? 成員內部類(Member Inner Class):定義在外部類的成員位置,與成員變量、成員方法同級別。
** 局部內部類(Local Inner Class):定義在方法內部或者代碼塊內部的類。
**?匿名內部類(Anonymous Inner Class):沒有類名的內部類,通常用于實現接口或繼承類的子類。
** 靜態內部類(Static Inner Class):使用 static 關鍵字定義的內部類,它不依賴于外部類的實例。

二、枚舉類(Enum Class):

枚舉類是一種特殊的類,用于表示一組固定的常量值。枚舉類使用關鍵字 enum 定義,它們不能被繼承,但可以實現接口。枚舉類的實例是單例的,可以通過 EnumSet 或 EnumMap 進行操作。

public enum Color {RED, GREEN, BLUE;
}

三、注解類(Annotation Class):


注解類是一種特殊的類,用于為其他代碼元素(如類、方法、字段等)提供元數據。注解類使用關鍵字 @interface 定義,它們不能被實例化,但可以通過反射獲取注解信息。注解類可以包含方法,這些方法用于定義注解的屬性。

public @interface MyAnnotation {String value() default "";int priority() default 0;
}

四、總結

**? 內部類是定義在另一個類內部的類,可以訪問外部類的成員,并且可以根據需要定義為成員內部類、局部內部類、匿名內部類或靜態內部類。
**? 枚舉類是一種特殊的類,用于表示一組固定的常量值。它們不能被繼承,但可以實現接口。
**? 注解類是一種特殊的類,用于為其他代碼元素提供元數據。它們不能被實例化,但可以通過反射獲取注解信息。

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

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

相關文章

AIGC在移動APP開發中的應用及未來前景

隨著科技的不斷進步,人工智能生成內容(AIGC,Artificial Intelligence Generated Content)在移動應用開發中的應用越來越廣泛。AIGC不僅能提高開發效率,還能帶來更好的用戶體驗。本文將探討AIGC在移動APP開發中的應用及…

通過ssr-echarts,服務端生成echarts圖

ssr-echarts :一個開源項目,它能夠服務端渲染 ECharts 圖表,并直接生成 PNG 圖片返回。該項目提供了多種主題,并且支持 GET 和 POST 請求。如果參數較多,建議使用 POST 方法。用戶可以自己部署這個服務。 1. 服務端安裝…

Three.js-實現加載圖片并旋轉

1.實現效果 2. 實現步驟 2.1創建場景 const scene new THREE.Scene(); 2.2添加相機 說明: fov(視場角):視場角決定了相機的視野范圍,即相機可以看到的角度范圍。較大的視場角表示更廣闊的視野,但可能…

第 10 章 nodelet(自學二刷筆記)

重要參考: 課程鏈接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ 講義鏈接:Introduction Autolabor-ROS機器人入門課程《ROS理論與實踐》零基礎教程 10.4 nodelet ROS通信是基于Node(節點)的,Node使用方便、易于擴展,可以滿足ROS中大多…

SBOM是如何幫助醫療器械制造商提高產品透明度的?

SBOM(軟件物料清單)通過以下方式幫助醫療器械制造商提高產品透明度: 1. 詳細記錄軟件組成 SBOM詳細列出了醫療器械所使用的所有軟件組件、版本、作者、許可證信息等。這使得制造商能夠清晰地了解產品的軟件組成,包括每個組件的來…

基于springboot實現民族婚紗預定系統項目【項目源碼+論文說明】

基于springboot實現民族婚紗預定系統的設計演示 摘要 現代經濟快節奏發展以及不斷完善升級的信息化技術,讓傳統數據信息的管理升級為軟件存儲,歸納,集中處理數據信息的管理方式。本民族婚紗預定系統就是在這樣的大環境下誕生,其可…

【Emgu CV教程】10.15、FillPoly()不規則形狀填充顏色

文章目錄 一、概念二、填充不規則圖形1.原始素材2.代碼3.運行結果 二、最大輪廓填充顏色1.原始素材2.代碼3.運行結果 一、概念 圖像的連通域是指圖像中具有相同像素值并且位置相鄰的像素組成的區域,連通域分析是指在圖像中尋找出彼此互相獨立的連通域并將其標記出來…

【最新鴻蒙應用開發】——Want信息載體

信息傳遞載體Want 1、概述 上一章節我們學習了UIAbility組件 【最新鴻蒙應用開發】——一篇搞懂什么是UIAbility-CSDN博客 ,其中組件間的交互傳遞信息的媒介就是Want,本章節我們來更加深入學習Want的相關知識。 Want是一種對象,用于在應用組…

2. JavaScript 語法和數據類型

1. 基礎 JavaScript不區分大小寫 2. 注釋 // 單行注釋/* 這是一個更長的,多行注釋 *//* 然而,你不能,/* 嵌套注釋 */ 語法錯誤 */3. 聲明 var 聲明一個變量,可選初始化一個值。 let 聲明一個塊作用域的局部變量,可…

ORM(對象關系映射)概念詳解

一、技術難點 ORM,即對象關系映射(Object-Relational Mapping),它的技術難點主要體現在如何將面向對象編程中的類和對象高效地映射到關系型數據庫中的表和記錄。具體來說,有以下幾個方面的技術挑戰: 數據類…

計算機畢業設計項目、管理系統、可視化大屏、大數據分析、協同過濾、推薦系統、SSM、SpringBoot、Spring、Mybatis、小程序項目編號1-500

大家好,我是DeBug,很高興你能來閱讀!作為一名熱愛編程的程序員,我希望通過這些教學筆記與大家分享我的編程經驗和知識。在這里,我將會結合實際項目經驗,分享編程技巧、最佳實踐以及解決問題的方法。無論你是…

桌面型激光雕刻機的發展前景及TMC應用優勢

一、行業現狀 近兩年來,激光雕刻行業正處于快速發展階段。隨著人們生活水平的提高,對個性化、定制化產品的需求日益增加,激光雕刻以其獨特的創意和精美的效果,滿足了消費者對個性化產品的追求。同時,隨著科技的不斷進…

OCP 安裝 OceanBase集群(企業版3.2.4.1)

創建集群 登錄OCP界面 1.點擊左側工具欄中的集群 2.進入集群頁面后 點擊 右上角的創建集群 集群設置 進入 創建集群 頁面,進行 目標集群 配置 集群種類 根據 生產環境 選擇 分布式 或者 單機集中式,第一次安裝 集群類型 選擇 主集群。 注意&#xf…

計算機網絡到底是指什么?

計算機網絡是信息技術領域中最為核心和復雜的一部分,它涵蓋了眾多的技術原理和應用。下面,我們將從技術層面深入探討計算機網絡的相關內容。 一、計算機網絡的分層模型 計算機網絡的分層模型是網絡通信的基石,它將網絡通信過程劃分為不同的層…

怎么解決企業生產計劃排程的幾大難點?

生產計劃排程,作為企業管理中的核心環節,其復雜性和動態性一直困擾著眾多企業。然而,通過科學的策略和技術手段,這些難點并非不可攻克。 生產環境的動態變化,如臨時訂單改變、緊急插單的需求、產品流程變化等&#xff…

Linux中網絡配置項目筆記

1.NetworkManager安裝 (或者安裝network.service,不要一起裝防止網絡沖突) 有網絡的狀態下yum install 下載無網絡的狀態下使用預先下載rpm包 rpm -ivh systemctl start NetworkManager #啟動 systemctl stop NetworkManager #停止 systemctl restart NetworkMana…

各大AI模型訓練成本大比拼

像OpenAI的ChatGPT、谷歌的Gemini Ultra這樣的高級AI模型,訓練它們通常需要數百萬美元的費用,且該成本還在迅速上升。隨著計算需求的增加,訓練它們所需的計算能力的費用也在飆升。為此,AI公司正在重新考慮如何訓練這些生成式AI系統…

描述Servlet監聽器的類型和用途

Servlet監聽器是Servlet規范中定義的一種特殊的類,用于監聽Web應用程序中特定事件的發生。它們按照監聽的對象和事件類型,可以劃分為多種類型,每種類型都有其特定的用途。 監聽器的類型 按照監聽對象劃分 應用程序環境對象(Serv…

華為OD刷題C卷 - 每日刷題 12(數組連續和,求最多可以派出多少支團隊)

1、(數組連續和): 這段代碼是解決“數組連續和”的問題。它提供了一個Java類Main,其中包含main方法和getResult方法,用于計算給定數組中有多少個連續區間的和大于等于給定值x。 main方法首先讀取數組的長度n和閾值x&…

【Javascript修煉篇】如何對JSON格式進行轉換

這將是我們幾乎日常都會用到的一個超實用函數。 根據數據的多樣性與結構,API 的響應可能會返回極其復雜的 JSON 對象。有時候,僅僅從整個 JSON 中抓取一個字段可能就不太夠用了。我們可能需要提取多個字段來展示在網頁上。每次手動遍歷這樣的復雜 JSON …