[轉載] Java中變量與常量

參考鏈接: Java中的實例變量隱藏

1、變量的定義:定義變量就是要告訴編譯器這個變量的數據類型,這樣編譯器才知道需要分配多少空間給它,以及它能存放什么樣的數據。在程序運行過程中空間的值是變化的,這個內存空間就成為變量。為了便于操作,給這個變量取個名字,稱為變量名。?

2、變量的命名規則:?

①變量名必須是一個有效的標識符?

②變量名不可以使用Java中的關鍵字?

③變量名不能重復?

④應選擇有意義的單詞作為變量名。?

說明:在Java語言中語序使用漢字或其他語言文字作為變量名,如:int 年齡 = 21;在程序運行時不會出現錯誤,但建議盡量不要使用這些語言文字作為變量名。?

3、①常量的定義:在程序運行過程一直不會改變的量稱為常量,通常也成為"final變量"。常量在整個程序中只能被賦值一次。在為所有的對象共享值時,常量是非常有用的。聲明常量的標準語法為:final 數據類型 變量名[=值]?

? ②常量名通常使用大寫字母,但這不是必須。很多Java程序員使用大寫字母表示常量,是為了清楚的表明正在使用常量。?

③當定義的final變量為成員變量時,必須在定義時就設定它的初始值,否則將會提示編譯錯誤。?

4、變量的有效范圍:變量的有效范圍是程序代碼能夠訪問該變量的區域,若超出該區域,則在編譯時會出現錯誤。在程序中,一般會根據變量的有效范圍將變量劃分為成員變量和局部變量。?

5、成員變量(全局變量):在類體中所定義的變量為成員變量,成員變量在整個類中都有效。類的成員變量又分為兩種:靜態變量和實例變量?

?

6、成員變量和局部變量的有效范圍:?

①成員變量(在類體中所定義的變量為成員變量):在整個類中都有效?

②局部變量(再類的方法內聲明變量,包括方法的參數都屬于局部變量):只在當前定義的方法內有效,不能用于類的其他方法中。局部變量的生命周期取決于方法,當方法被調用時,Java虛擬機為方法中的局部變量分配內存空間,當該方法調用結束后,則會釋放方法中局部變量占用的內存空間,局部變量也將被銷毀。?

③局部變量可與成員變量的名字相同,此時成員變量將被隱藏,即這個成員變量在此方法中暫時失效。?

?

運行結果為:?

?

??

7、最后附上代碼:?

package com.abc;

?

public class Variable {

? ? String name;// 成員變量(Member variables),也稱為全局變量,對象的屬性;成員變量也分為靜態變量和實例變量

? ? static int age = 20;// 靜態變量(Static variable)

? ? int weight = 45;// 實例變量(Instance variable)

? ? final double PI = 3.14;// 聲明int類型常量,當定義的final變量為成員變量時,必須在定義時就設定它的初始值,否則將會提示編譯錯誤。

?

? ? static final double HEIGHT = 180;// 常量/靜態變量

?

? ? public static void main(String[] args) {

? ? ? ? final String tag;// 常量(constant),當定義的final變量為成員變量時,可以賦初始值,也可以不賦值

? ? ? ? String sex = "女";// 局部變量(Local variable)

? ? ? ? tag = "A";

? ? ? ? int age = 21;

//? ? ? ? tag = "B";// 錯誤的代碼。常量在整個程序中只能被賦值一次。

? ? ? ? System.out.println(tag + "\t" + sex);

? ? ? ? System.out.println("年齡為:" + age);

? ? }

?

}

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

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

相關文章

Linux-實用快捷鍵操作

博文說明【前言】: 本文將通過個人口吻介紹Linux下一些常用的實用快捷鍵,在目前時間點【2017年6月14號】下,所掌握的技術水平有限,可能會存在不少知識理解不夠深入或全面,望大家指出問題共同交流,在后續工作…

iOS技術博客:App備案指南

📝 摘要 本文介紹了移動應用程序(App)備案的重要性和流程。備案是規范App開發和運營的必要手段,有助于保護用戶權益、維護網絡安全和社會秩序。為了幫助開發者更好地了解備案流程,本文提供了一份最新、最全、最詳的備…

[轉載] Java中靜態成員變量,靜態代碼塊,靜態內部類何時被初始化?

參考鏈接: Java中的初始化程序塊Initializer Block 關于這個問題,本文不扯理論,直接上代碼,通過結果來驗證結論,廢話少說,測試代碼如下: public class StaticTest { public static StaticMem…

mikrotik dhcp server

操作路徑: /ip dhcp-server 關聯操作: /ip pool屬性 述 dhcp server interface (名稱) – 選擇 DHCP 服務的網絡接口 dhcp address space (IP 地址/掩碼; 默認: 192.168.0.0/24) – DHCP 服務器將出租給客戶端的網絡地 址段 gateway (IP 地址; 默認: 0.0.0.0) – 分配給客戶端的…

[轉載] Java static關鍵字與static{}語句塊

參考鏈接: Java中的靜態塊static block 目錄直通車 一、 類的加載特性與時機 1、 類加載的特性 2、 類加載的時機 二、 static的三個常用 1、 修飾成員變量 2、 修飾成員方法 3、 靜態塊(static{}) 一、 類的加載特性與時機 …

Perl文件讀寫操作

本文轉自 tiger506 51CTO博客,原文鏈接:http://blog.51cto.com/tiger506/830771,如需轉載請自行聯系原作者

[轉載] Java 語言中的實例初始化塊 ( IIB) 詳解

參考鏈接: Java中的實例初始化塊(IIB) 在 Java 語言中的類初始化塊 文章中我們簡單的介紹了下 Java 中的實例初始化塊 ( IIB )。不過我覺得介紹的有點簡單了,于是,再寫一篇文章詳細介紹下吧。 Java 語言中,存在三種操作&#x…

不用正則表達式,用javascript從零寫一個模板引擎(一)

前言 模板引擎的作用就是將模板渲染成html,html render(template,data),常見的js模板引擎有Pug,Nunjucks,Mustache等。網上一些制作模板引擎的文章大部分是用正則表達式做一些hack工作,看完能收獲的東西很少。本文將使用編譯原理那套理論來打…

[轉載] Java靜態綁定與動態綁定

參考鏈接: Java中的靜態綁定與動態綁定 程序綁定的概念: 綁定指的是一個方法的調用與方法所在的類(方法主體)關聯起來。對java來說,綁定分為靜態綁定和動態綁定;或者叫做前期綁定和后期綁定. 靜態綁定: 在程序執行前方…

關于批量插入數據之我見(100萬級別的數據,mysql)

2019獨角獸企業重金招聘Python工程師標準>>> 因前段時間去面試,問到如何高效向數據庫插入10萬條記錄,之前沒處理過類似問題,也沒看過相關資料,結果沒答上來,今天就查了些資料,總結出三種方法&am…

各個OS關于查看磁盤和wwn號的方法

1,HP-UX幾個命令1)查看型號,和uname -a差不多model2)查看光纖卡信息ioscan -funC fc3) 查看掃描出的磁盤信息ioscan -fucC disk4)查看磁盤及其對應的路徑ioscan -m dsf5) 查看劃分過來的lunioscan -m lun6) 查看磁盤大小diskinfo …

[轉載] Java是不是面向對象的程序

參考鏈接: 為什么Java不是純粹的面向對象語言 轉載自:https://blog.csdn.net/a21700790yan/article/details/80129053 Java——是否確實的 “純面向對象”?讓我們深入到Java的世界,試圖來證實它。 在我剛開始學習 Java 的前面幾…

極速理解設計模式系列:6.適配器模式(Adapter Pattern)

四個角色:目標抽象類角色(Target)、目標對象角色(Adapter)、源對象角色(Adaptee)、客戶端角色(Client) 目標抽象類角色(Target):定義需要實現的目標接口 目標對象角色(Adapter):調用另外一個源對象,并且轉換…

[轉載] Java之繼承

參考鏈接: Java多重繼承 Java之繼承 繼承是面向對象程序的一個基本特征,通過繼承可以實現父子關系,以及代碼的復用。通過繼承實現的類稱為子類,被繼承的類稱為父類,所有直接或間接被繼承的類都稱為父類。 Java類體…

Spark(二): 內存管理

2019獨角獸企業重金招聘Python工程師標準>>> Spark 作為一個以擅長內存計算為優勢的計算引擎,內存管理方案是其非常重要的模塊; Spark的內存可以大體歸為兩類:execution和storage,前者包括shuffles、joins、sorts和agg…

[轉載] 手把手教你整合最優雅SSM框架:SpringMVC + Spring + MyBatis

參考鏈接: Java繼承類的對象創建 本文發表于2016年6月,寫于作者學生時期。文中使用到的技術和框架可能不是當下最佳實踐,甚至很不“優雅”。但對于剛接觸JavaEE和Spring的同學來說,還是能有很多收獲的,大牛輕拍 我們…

多播、組播、廣播優缺點分析

2019獨角獸企業重金招聘Python工程師標準>>> 單播、多播和廣播單播”(Unicast)、“多播”(Multicast)和“廣播”(Broadcast)這三個術語都是用來描述網絡節點之間通訊方式的術語。那么這些術語究…

[轉載] Java重載、覆蓋與構造函數

參考鏈接: Java中的繼承和構造函數 /** * 拷貝構造函數---Copyf t2 new Copyf(t1);就不會在調用默認構造函數了。 * 復制clone和引用 * 重載是在同一個類(范圍)中,覆蓋是子類對父類而言。 重載不關心返回值類型。 靜態方法不能被…

LOFTERD18B542F16FF685FD684F427B4…

2019獨角獸企業重金招聘Python工程師標準>>> 驗證 轉載于:https://my.oschina.net/jinhengyu/blog/1572124

[轉載] Java獲取一個類繼承的父類或者實現的接口的泛型參數

參考鏈接&#xff1a; Java中的接口和繼承 泛型的作用就不多介紹了&#xff0c;如果你想具備架構設計能力&#xff0c;那么熟練使用泛型是必不可少的。 不多說了&#xff0c;先定義泛型父類和泛型接口&#xff1a; package cn.zhh; public class Parent<T1, T2> { …