1.JAVA基礎核心概念

来源:https://www.cnblogs.com/Smileing/archive/2018/12/04/10034289.html
-Advertisement-
Play Games

JAVA基礎知識 轉載至:http://www.runoob.com/java/java-variable-types.html 對菜鳥教程進行核心整理: 一、JAVA理論概念 1、基礎概念 Java作為一種面向對象語言主要特性概念如下 介面:介面可理解為對象間相互通信的協議。介面在繼承中扮演著很重 ...


JAVA基礎知識

轉載至:http://www.runoob.com/java/java-variable-types.html  

對菜鳥教程進行核心整理:

一、JAVA理論概念

1、基礎概念

Java作為一種面向對象語言主要特性概念如下

  • 介面:介面可理解為對象間相互通信的協議。介面在繼承中扮演著很重要的角色。(可多繼承)介面只定義派生要用到的方法,但是方法的具體實現完全取決於派生類。

1、多態:前提是繼承,不同類對同一消息作出響應。解決應用程式重名問題,參數化多態和包含多態。

2、繼承:增加類的可重用性,一個類可以由其他類派生。如果你要創建一個類,而且已經存在一個類具有你所需要的屬性或方法,那麼你可以將新創建的類繼承該類。
      利用繼承的方法,可以重用已存在類的方法和屬性,而不用重寫這些代碼。被繼承的類稱為超類(super class),派生類稱為子類(subclass)。

3、封裝:把過程和數據包圍保護(private),通過受保護介面訪問其它對象

4、抽象:忽略主題無關,更加註意主旨,拋棄細節,有過程抽象(函數),數據抽象(數據類型)

5、類:類是一個模板,它描述一類對象的行為和狀態。

6、對象:對象是類的一個實例,有狀態和行為。例如,一條狗是一個對象,它的狀態有:顏色、名字、品種;行為有:搖尾巴、叫、吃等。

7、實例:每個對象都有獨特的實例變數,對象的狀態由這些實例變數的值決定 

8、方法:方法就是行為,一個類可以有很多方法。邏輯運算、數據修改以及所有動作都是在方法中完成的。

9、重載:同一類中有倆個以上相同的方法名,但參數不同,方法不同。

2、Java變數

  • 局部變數:在方法、構造方法或者語句塊中定義的變數被稱為局部變數。變數聲明和初始化都是在方法中,方法結束後,變數就會自動銷毀
  • 成員變數:成員變數是定義在類中,方法體之外的變數。這種變數在創建對象的時候實例化。成員變數可以被類中方法、構造方法和特定類的語句塊訪問。(主方法之外)
  • 類變數:類變數也聲明在類中,方法體之外,但必須聲明為static類型

需要註意的地方:(JAVA關鍵字也不能在類名或者方法使用。)

3、命名規則:

1、見名釋義

2、不跟關鍵字和保留字衝突

3、駝峰原則,類名和介面名首字母大寫(大駝峰規則)   常量名大寫下劃線分開  變數名,方法名(小駝峰規則)首字母小寫,第二個單詞大寫

  • 大小寫敏感:Java是大小寫敏感的,這就意味著標識符Hello與hello是不同的。
  • 類名:對於所有的類來說,類名的首字母應該大寫。如果類名由若幹單片語成,那麼每個單詞的首字母應該大寫,例如 MyFirstJavaClass 。
  • 方法名:所有的方法名都應該以小寫字母開頭。如果方法名含有若幹單詞,則後面的每個單詞首字母大寫。
  • 源文件名:源文件名必須和類名相同。當保存文件的時候,你應該使用類名作為文件名保存(切記Java是大小寫敏感的),文件名的尾碼為.java。(如果文件名和類名不相同則會導致編譯錯誤)。
  • 主方法入口:所有的Java 程式由public static void main(String []args)方法開始執行。

4、JAVA兩類修飾符:

  • 訪問控制修飾符 : default, public , protected, private
  • 非訪問控制修飾符 : final, abstract, static, synchronized

5、Java數組

數組是儲存在堆上的對象,可以保存多個同類型變數。在後面的章節中,我們將會學到如何聲明、構造以及初始化一個數組。

6、Java枚舉

枚舉限制變數只能是預先設定好的值。使用枚舉可以減少代碼中的bug。

註釋: // 這是單行註釋的示例 /* 這個也是單行註釋的示例 */

  /* 這是第一個Java程式

   這是一個多行註釋的示例 */

7、構造方法和重載以及重寫

  重寫是子方法覆蓋父類方法、要求方法名和參數相同;(前提是繼承)

  重載是同一類中有倆個以上相同的方法名,但參數不同,方法不同。

  構造函數是重載的一種,最大的作用是創建對象完成初始化每個類都有構造方法。如果沒有顯式地為類定義構造方法,Java編譯器將會為該類提供一個預設構造方法。在創建一個對象的時候,至少要調用一個構造方法。構造方法的名稱必須與類同名,一個類可以有多個構造方法。

8、創建對象

  • 聲明:聲明一個對象,包括對象名稱和對象類型。
  • 實例化:使用關鍵字new來創建一個對象。
  • 初始化:使用new創建對象時,會調用構造方法初始化對象。

Puppy myPuppy = new Puppy( "tommy" );/* 實例化對象 */ ObjectReference = new Constructor();

/* 訪問類中的變數 */ ObjectReference.variableName; /* 訪問類中的方法 */ ObjectReference.methodName();

二、基本數據類型

1、內置數據類型

Java語言提供了八種基本類型。六種數字類型(四個整數型,兩個浮點型),一種字元類型,還有一種布爾型

1、byte

2、short

3、int

4、long

5、float

6、double

7、boolean

8、char

相應的封裝方法

        System.out.println("基本類型:byte 二進位位數:" + Byte.SIZE);  

        System.out.println("包裝類:java.lang.Byte");  

        System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);  

        System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);  

2、引用數據類型

在Java中,引用類型的變數非常類似於C/C++的指針。引用類型指向一個對象,指向對象的變數是引用變數。這些變數在聲明時被指定為一個特定的類型,比如 Employee、Puppy 等。變數一旦聲明後,類型就不能被改變了。

對象、數組都是引用數據類型。

所有引用類型的預設值都是null。

一個引用變數可以用來引用任何與之相容的類型。

3、JAVA常量

常量在程式運行時是不能被修改的。

在 Java 中使用 final 關鍵字來修飾常量,聲明方式和變數類似:

final double PI = 3.1415927;

三、自動類型轉換

整型、實型(常量)、字元型數據可以混合運算。運算中,不同類型的數據先轉化為同一類型,然後進行運算。

byte,short,char—> int —> long—> float —> double 

轉換的規則:

1. 不能對boolean類型進行類型轉換。

2. 不能把對象類型轉換成不相關類的對象。

3. 在把容量大的類型轉換為容量小的類型時必須使用強制類型轉換。

4. 轉換過程中可能導致溢出或損失精度

5. 浮點數到整數的轉換是通過捨棄小數得到

強轉可能丟失精度:

int強轉成float,long強轉成float,long強轉成double可能出現精度損失。

 


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

-Advertisement-
Play Games
更多相關文章
  • 1.for 迴圈 使用for語句可以遍歷全部元素,例如逐個輸出字元串中的字元,逐個輸出列表中的元素,元組中的元素,集合中的元素(註意賦值時各元素的順序),字典中的鍵……1-1.range迴圈: 這是從range生成的列表裡分別從0開始賦值給i變數,每賦值一次就迴圈一次,一直到列表結束"""" 元組的 ...
  • 【根索引】 【Python索引】 目標 使用PyCharm,完成兩個小實例的編寫和運行。一個是溫度轉換,一個是蟒蛇圖形繪製。 過程 1、先設置project目錄,雖然命名不是很正式,主要不太習慣軟體的目錄結構,好在只是熟悉語言和工具,就先把代碼都放一個目錄下吧。 2、可以打開多個py文件,運行時可以 ...
  • 問: 當用戶登錄某網站後,向伺服器發送一個請求,伺服器如何判斷是這個用戶請求的 首先,你要明白一點,最初http協議在設計的時候,主要面向當時的web1.0網站,他們不需要知道是誰來訪問,只需要向外界提供相應的web服務即可. 但是,在web2.0的網站中,用戶和網站發生相關的信息交互.所以,web ...
  • 方法:__name__ 、__doc__ 函數:wraps() 函數 裝飾器傳參、多個裝飾器,裝飾一個函數 ...
  • String str1 和 str2 所指向的對象在字元串常量池中,是同一個對象。 All literal strings and string valued constant expressions are interned,When the intern method is invoked, i ...
  • 前言 本篇來分析new是怎麼實現的, 使用c++進行在申請對象的時候用到new, 但是為什麼申請對象要用到new, 而不能用malloc, 而有時申請數組的用new或者malloc似乎又都可以, 這裡就來分析一下new實現. new operator, operator new以及placement ...
  • 學習java知識,首先要安裝jdk來配置開發環境和java運行環境,本文介紹一下JDK配置流程和驗證配置成功的方法。 一、配置JDK 1、首先下載jdk1.7壓縮包並解壓到D盤。 2、我的電腦--右鍵--屬性--高級系統設置--高級,單擊環境變數 3、選擇“系統變數”中的新建選項卡 4、在彈出的提示 ...
  • 題目內容: 一個多項式可以表達為x的各次冪與繫數乘積的和,比如: 2x6+3x5+12x3+6x+20 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的繫數相加然後輸出。 程式要處理的冪最大為100。 輸入格式: 總共要輸入兩個多項式,每個多項式的輸入格式如下: 每行輸 ...
一周排行
    -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 ...