java基礎語言

来源:https://www.cnblogs.com/birdshdbn/archive/2018/08/14/9457861.html
-Advertisement-
Play Games

一.標識符 標識符:在java程式中,有些名字是我們自己定義的,那麼這些我們自己定義的名字就叫做自定義的標識符 標識符的命名規則: 1.標識符是由字母(a-z A-Z)、數字、下劃線(_)、美元符號($)組成的 2.標識符不能以數字開頭 3.標識符是嚴格區分大小寫的 4.標識符是沒有長度限制的 5. ...


一.標識符

    標識符:在java程式中,有些名字是我們自己定義的,那麼這些我們自己定義的名字就叫做自定義的標識符

    標識符的命名規則:

        1.標識符是由字母(a-z  A-Z)、數字、下劃線(_)、美元符號($)組成的

        2.標識符不能以數字開頭

        3.標識符是嚴格區分大小寫的

        4.標識符是沒有長度限制的

        5.標識符的命名要有意義,最好是一看到名字就知道它的意思

        6.關鍵字、保留字不能用於自定義的標識符

    標識符的命名規範:

        1.類名、介面名的每一個單詞的首字母大寫,其他小寫。如:RunTime

        2.變數名、方法名的首單詞全部小寫,其他單詞的首字母大寫,其他小寫。如:readBook

        3.包名所有單詞全部小寫。如:java.lang

        4.常量名所有的單詞全部大寫,如果有多個單詞,那麼單詞與單詞之間用下劃線分開。如:PI、AGE_OF_PERSON

    關鍵字:就是在java程式中具有特殊含義的標識符,一般用於描述程式的結構和表示的數據類型

               

    保留字:是系統保留起來不允許用戶使用的標識符(保留字有const、goto)

 

二.註釋

    註釋:使用文字對程式的說明,註釋是寫給程式員看的,讓程式員更容易瞭解程式的內容,編譯器會忽略註釋的內容

    註釋的類別:

        1.單行註釋       //註釋的內容

        2.多行註釋  /*註釋的內容*/

        3.文檔註釋  /**註釋的內容*/  文檔註釋也算是多行註釋

    註釋的作用:

        1.使用文字對程式的說明,方便程式員瞭解程式的內容

        2.調試程式

    文檔註釋與多行註釋的區別:

        多行註釋的內容不能生成開發者文檔,而文檔註釋的內容可以生成開發者文檔

    如何生成開發者文檔?

        使用javadoc開發工具即可生成開發者文檔

            使用Javadoc工具的格式:

                javadoc -d 存放文檔的路徑   java的源文件 

            使用javadoc需要註意的細節:

                1.如果一個類需要使用Javadoc工具生成開發者文檔,那麼這個類必須要用public修飾

                2.文檔註釋的內容一般位於類或者方法的上面

    寫註釋的規範:

        單行註釋一般位於程式的右側,多行註釋和文檔註釋一般位於類或方法的上面

三.常量

    常量:程式在運行過程中其值不會發生改變的量

    常量的類別:

        1.整數常量:1、2、3

        2.小數常量:1.2、2.3、3.14

        3.布爾常量:布爾常量就只有兩個值,分別是true、false

        4.字元常量:單個字元用單引號引起來的內容。如:'a'、'b'

        5.字元串常量:使用雙引號引起來的內容。如:"Hello World"

    整數常量的表現形式是以不同的進位(二進位、八進位、十六進位....)表現出來的

        二進位由0、1組成;八進位由0~7組成;十六進位由0~9、a(10)、b(11)、c(12)、d(13)、e(14)、f(15)組成

        十進位與二進位之間的轉換:

                十進位轉換成二進位:十進位的數據不斷除以2,直到商為0為止,然後從下往上取餘數就是對應的二進位。

                例子如下:

                    

                二進位轉換成十進位:二進位的數據每一位數都乘以2的n次方,n從0開始遞增,然後把各部分的數據相加

                例子如下:

                      1110(二進位)--------------------->14(十進位)

                      1110(十進位)=0*2^0+1*2^1+1*2^2+1*2^3

                             =0+2+4+8

                             =14(十進位)

        

        十進位與八進位之間的轉換:

                十進位轉換成八進位:十進位的數據不斷除以8,直到商為0為止,然後從下往上取餘數就是對應的八進位。

                例子如下:

                     

                八進位轉換成十進位:八進位的數據每一位數都乘以8的n次方,n從0開始遞增,然後把各部分的數據相加

                例子如下:

                      55(八進位)--------------------->45(十進位)

                      55(八進位)=5*8^0+5*8^1

                            =5+40

                            =45(十進位)

                八進位的數據相當於3個二進位位  

                例子如下:

                      55(八進位)--------------------->101101(二進位)

        十進位與十六進位之間的轉換:

                十進位轉換成十六進位:十進位的數據不斷除以16,直到商為0為止,然後從下往上取餘數就是對應的十六進位。

                例子如下:

                           

                十六進位轉換成十進位:十六進位的數據每一位數都乘以16的n次方,n從0開始遞增,然後把各部分的數據相加

                例子如下:

                      26(十六進位)--------------------->38(十進位)

                      26(十六進位)=6*16^0+2*16^1

                             =6+32

                             38(十進位)

                十六進位的數據相當於4個二進位位

                例子如下:

                      26(十六進位)--------------------->00100110(二進位)

        使用進位的數據時,有幾點要註意下:

                1.如果一個數據沒有加上任何標識符時,預設的是十進位的數據

                2.如果一個數據要表示成二進位時,要在數據前面加上0b

                3.如果一個數據要表示成八進位時,要在數據前面加上0

                4.如果一個數據要表示成十六進位時,要在數據前面加上0x

System.out.println(10);//表示的是十進位的數據        輸出的結果:10
System.out.println(0b10);//表示的是二進位的數據       輸出的結果:2 
System.out.println(010);//表示的是八進位的數據       輸出的結果:8
System.out.println(0x10);//表示的是十六進位的數據      輸出的結果:16

四.變數與數據類型

        變數:程式在運行過程中其值會發生改變的量

        變數可以理解為一個存儲數據的容器,每一個容器都會有他固定的大小、容器里存儲的東西以及容器的名字,往往我們人一般放東西(比如放蘋果)的時候,都會說把蘋果放到多大的籃子當中,java當中也是如此,所以java在聲明變數時,其格式大概是    容量  變數名=數據,這裡的容量就相當於java當中的數據類型,數據就是上述說的常量,接下來我們來說說java的數據類型

        java的數據類型有兩種

                1.基本數據類型

                2.引用數據類型

  java的基本數據類型有八種:

    1.整數的數據類型:

        名稱          記憶體空間    數值範圍

        byte(位元組)      8bit(位)    2^8=256(-128~127)

        short(短整型)      16bit(位)     2^16=65536(-32768~32767)

        int(整型)         32bit(位)     2^32=4294967296(-2147483648~2147483647)

        long(長整型)     64bit(位)     2^64(-9223372036854774808~9223372036854774807)

    2.小數的數據類型:

        float(單精度浮點型)  32bit(位)     2^32=4294967296(-2147483648~2147483647)

        double(雙精度浮點型) 64bit(位)     2^64(-9223372036854774808~9223372036854774807) 

    3.字元的數據類型:

        char(字元)      16bit(位)     2^16=65536(-32768~32767)

    4.布爾的數據類型:

        boolean(布爾)      8bit\32bit(位)  2^8\2^32

        在使用八種數據類型,有幾點要註意下:

                1.如果一個整數沒有加上任何標識的時候,那麼預設的是int類型的數據;如果需要把該數據表示成long類型的時候,那麼需要在數據後面加上L,L是不區分大小寫的,但是建議最好用大寫表示

                2.如果一個小數沒有加上任何標識的時候,那麼預設的是double類型的數據;如果需要把該數據表示成float類型的時候,那麼也需要在數據後面加上F,F也是不區分大小寫的

        聲明變數的方式:

                1.數據類型  變數名;

                2.數據類型  變數名1,變數名2.......;

        聲明變數要註意的幾點:

                1.變數必須是先聲明後使用

                2.在一個作用域中是不能聲明同一個變數名

        字元串的數據類型:String,他是屬於引用類型數據

 

class Demo1 
{
	public static void main(String[] args) 
	{
		byte age = 120;  //聲明瞭一個byte類型的變數,該變數的名字叫age,把120存儲到了age變數中。
		short money = 128;
		int bossMoney = 1000000000;
		long bankMoney = 10000000000000000L;
		//存儲小數
		float f = 3.14f;
		double d = 3.1415926537;
                //存儲布爾值
		boolean b = false;
                //存儲位元組
		char c = 'a'; 
                //存儲字元串
		String str = "hello world";
		System.out.println(str); //獲取一個變數存儲的數據時,只需要使用變數名即可。
	}
}    

 

        數據類型轉換:

                小數據類型------------>大數據類型      自動類型轉換

                大數據類型------------>小數據類型      強制類型轉換

        數據類型轉換可以理解為小容器(小數據類型)里的東西放到大容器(大數據類型)里,是可以放進去的;如果把大容器(大數據類型)里的東西放到小容器(小數據類型)里,那麼就可能沒辦法全部放進去,這樣就會造成大容器里的東西丟失一部分(溢出)

        強制類型轉換的格式:

                小數據類型  變數名=(小數據類型)大數據類型 

        數據類型轉換要註意幾點:

                1.凡是byte、short、char類型的數據在運算的時候都會自動轉換成int類型的數據在運算

                2.兩個不同類型的數據在運算的時候,結果取決於大的數據類型

   

class Demo2 
{
	public static void main(String[] args) 
	{
		byte  b=  11;   
		short s = b; // 把b變數存儲的值賦予給s變數。
		int i = s;  
		long l = i;   
		System.out.println(l);//輸出的結果:11

		int i = 128;  //4個位元組
		byte b =(byte) i;  // 4位元組->1個位元組,需要強制類型轉換
		System.out.println(b);  //輸出的結果: -128

		//凡是byte、short 、 char數據類型數據在運算的時候都會自動轉換成int類型的數據再運算。
		byte b1 =1;
		byte b2 = 2;
		byte b3 = (byte)(b1+b2);
		System.out.println(b3); //輸出的結果:3  
		
		System.out.println('a'+1); //輸出的結果:98 
				
		//兩個不同數據類型的數據在運算的時候,結果取決於大的數據類型
		int i =10;
		long l = 20;
		i = (int)(i+l); 
		System.out.println(i);//輸出的結果:30
	}
}

 

  

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 說起來做一個支付系統最基礎的就是支付功能了,對於我們來說除了各大銀行以外微信和支付寶也是必選項,畢竟人家這個龐大的用戶群在那裡擺著呢,你不用那不是想著放棄這些用戶麽。 今天我們就來看一看對於我們開發者來說如何快速的進行接入。 首先我們要做的就是先去螞蟻金服開放平臺註冊賬號https://open.a ...
  • 這篇文章主要介紹了Python異常處理總結,需要的朋友可以參考下本文較為詳細的羅列了Python常見的異常處理,供大家參考,具體如下: 1.入門讀物 2.進階讀物 3.Web框架 4.爬蟲開發 5.圖形圖像6.數據分析 7.機器學習等等資料!需要的可以加QQ群:832339352!進群免費獲取! 拋 ...
  • Description George took sticks of the same length and cut them randomly until all parts became at most 50 units long. Now he wants to return sticks to ...
  • 1、Java支持基於流的通信和基於包的通信 基於流的通信使用TCP協議(傳輸控制協議)進行數據傳輸,傳輸是無損可靠的 基於包的通信使用UDP協議(用戶數據報協議)進行數據傳輸,不能保證傳輸沒有丟失 2、服務端和客戶端套接字--基於流的通信 客戶端代碼 如果服務端的埠服務沒有起來,運行客戶端的程式會 ...
  • '''re模塊 內部實現不是Python 而是調用了c的庫 re是什麼 正則 表達 式子 就是一些帶有特殊含義的符號或者符號的組合 作用: 對字元串進行過濾 在一對字元串中找到所關心的內容 你就需要告訴電腦過濾規則是什麼樣 通過什麼方式來告訴電腦 就通過正則表達式 re模塊常用方法findall ...
  • 最近發現一個網站www.unsplash.com ( 沒有廣告費哈,純粹覺得不錯 ),網頁做得很美觀,上面也都是一些免費的攝影照片,覺得很好看,就決定利用蹩腳的技能寫個爬蟲下載圖片。 先隨意感受一下這個網站: 接下來開始對網頁進行解析: 在該網頁檢查元素,選擇其中一張圖片查看它的代碼 可以看到,圖片 ...
  • 教材:《彙編語言》 王爽 第三版 Charpter 1. 基礎知識 1.1 : 機器語言 1.2 : 彙編語言的產生 1.3 : 彙編語言的組成 1.4 : 存儲器 1.5 : 指令和數據 1.6 : 存儲單元 1.7 : CPU對於存儲器的讀寫 1.8 : 地址匯流排 1.9 : 數據匯流排 1.10 ...
  • JMM簡介 Java Memory Model簡稱JMM, 是一系列的Java虛擬機平臺對開發者提供的多線程環境下的記憶體可見性、是否可以重排序等問題的無關具體平臺的統一的保證。(可能在術語上與Java運行時記憶體分佈有歧義,後者指堆、方法區、線程棧等記憶體區域)。併發編程有多種風格,除了CSP(通信順序 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...