首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Java 入門基礎:環境搭建、語法規範、數據類型與面向對象核心特性

     編輯:Java 綜合教學

前言:從零構建 Java 知識體系

Java 以「一次編寫,到處運行」跨平台特性、豐富生態系統、強類型靜態語言優勢,長期佔據企業級開發、Android、大數據、雲原生主流地位。本文面向初學者,系統梳理 JDK 選擇、環境變量配置、基礎語法規範、八大基本類型與包裝類、數組、面向對象三大特性、接口與抽象類、核心類庫包結構,建立完整入門知識骨架。


一、Java 平台版本與 JDK 選擇

版本全稱核心定位包含關係
Java SEStandard Edition核心類庫:語言基礎、集合、IO、網絡、數據庫、並發、JVM基礎核心
Java EEEnterprise Edition企業級:Servlet、JSP、EJB、JPA、JTA、JMS、WebService、CDI含 SE + 企業擴展
Java MEMicro Edition嵌入式/移動:CLDC/MIDP、專用 API(智能卡、手機、PDA)SE 子集 + 專有擴展
  • 2005 年 JavaOne 更名:J2SE→Java SE、J2EE→Java EE、J2ME→Java ME。
  • **初學路徑**:Java SE 核心語法 → Java EE Web/企業級 → Spring 生態 → 分布式/微服務/雲原生。
  • JDK = JRE + 開發工具;JRE = JVM + 核心類庫。僅運行程序裝 JRE,開發必裝 JDK。

二、開發環境搭建

1. JDK 下載安裝

  • 官網 / OpenJDK / Adoptium / 阿里雲鏡像下載 .msi/.tar.gz。
  • 安裝路徑建議無中文、無空格:D:\Java\jdk-17。

2. 環境變量配置


# 系統變量
JAVA_HOME = D:\Java\jdk-17
CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
Path += %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
  • . 代表當前目錄,保證運行當前目錄下的類。
  • Windows 10+ 可僅配置 JAVA_HOME 和 Path,CLASSPATH 可省略(現代構建工具管理依賴)。

3. 驗證安裝


cmd → java -version
java version "17.0.x" ...
cmd → javac -version
javac 17.0.x

4. IDE 選擇

  • IntelliJ IDEA:社區版免費,智能提示、重構、調試、Maven/Gradle/Git 整合最強,主流首選。
  • Eclipse:免費開源,插件豐富,舊項目維護常見。
  • VS Code + Extension Pack for Java:輕量、啟動快,適合輕量級開發/學習。

三、基礎語法規範

1. 命名約定

2. 源文件規則

  • 一個 .java 文件**最多一個 public 類**,public 類名 = 文件名。
  • 包語句 package ... 必須在首行(非註釋)。
  • 導入語句 import ... 在 package 後、類定義前。
  • 入口方法:public static void main(String[] args)。

3. 關鍵字與保留字

  • 50+ 關鍵字(class、interface、extends、implements、static、final、try 等)。
  • goto、const 為保留字,**不可作標識符**。

四、數據類型系統

1. 八大基本類型

標識符類型規範示例
類/接口/枚舉/註解PascalCase(大駝峰)UserService、HttpClient
方法/變量/參數camelCase(小駝峰)getUserById、userName
常量UPPER_SNAKE_CASEMAX_CONNECTIONS、DEFAULT_TIMEOUT
包名全小寫、反域名com.company.project.module

2. 包裝類與自動裝箱/拆箱

類別類型位數默認值取值範圍/說明
整數byte80-128 ~ 127
short160-32,768 ~ 32,767
int320-2³¹ ~ 2³¹-1 (約 ±21 億)
long640L-2⁶³ ~ 2⁶³-1,字面量加 L
浮點float320.0f單精度,字面量加 F,約 7 位有效數字
double640.0雙精度,默認,約 15-16 位有效數字
字符char16'\u0000'UTF-16 代碼單元,無符號 0~65535
布爾boolean1 (JVM 實際 4/8 字節)falsetrue/false,無具體大小規定
  • 所有包裝類繼承 Number(除 Character/Boolean),提供 intValue()、doubleValue() 等轉換。
  • valueOf() 優先返回緩存對象,**緩存範圍內 == 比較為 true**,超出範圍 new 新對象 == 為 false,**務必用 equals() 比較值**。
  • 自動拆箱可能拋 NullPointerException(包裝類為 null 參與運算)。

3. 常量定義


final int MAX_SIZE = 100;        // 編譯期常量
static final String APP_NAME = "MyApp"; // 類常量
// final 修飾引用:引用不可變,對象內容可變

五、數組

  • 聲明:int[] arr; 或 int arr[];(推薦前者)。
  • 創建:new int[5](默認 0)、new int[]{1,2,3}、{1,2,3}(聲明時)。
  • 長度:arr.length 屬性(非方法)。
  • 二維/鋸齒:new int[3][] → 每行 new int[n]。
  • 工具類:Arrays.sort/toString/binarySearch/copyOf/stream。

六、面向對象三大特性

1. 封裝

  • 私有字段 private + 公共 getter/setter。
  • 構造器初始化、參數校驗、不可變對象模式(final 字段、無 setter、防禦性拷貝)。

2. 繼承

  • extends 單繼承,super 調用父構造/方法。
  • 方法重寫:簽名相同、返回類型協變、拋出異常子集、訪問權限不小於父類。
  • final 類/方法禁止繼承/重寫。
  • Object 根類:toString/equals/hashCode/clone/finalize/getClass/wait/notify。

3. 多態

  • 父類引用指向子類對象:Animal a = new Cat();
  • 編譯看左邊(父類有無方法),運行看右邊(子類實際實現)。
  • 向上造型自動,向下造型需強轉(配合 instanceof 守衛)。
  • 動態綁定:JVM invokevirtual 查虛表分發。

七、接口與抽象類

基本類型包裝類緩存範圍
byteByte-128 ~ 127
shortShort-128 ~ 127
intInteger-128 ~ 127
longLong-128 ~ 127
floatFloat無
doubleDouble無
charCharacter0 ~ 127
booleanBooleanTRUE/FALSE 兩個單例

設計原則

  • 接口定規範:能力契約(Serializable、Comparable、Runnable)。
  • 抽象類共代碼:模板方法模式、公共字段/邏輯復用。
  • 接口隔離:多個小接口優於單一大接口。

八、核心包結構速覽

特性抽象類接口
關鍵字abstract classinterface
構造器可有(供子類調用)無(Java 8 前)
字段任意隱式 public static final
方法抽象 + 具體Java 8 前全抽象;8+ default/static/private
繼承/實現單繼承多實現
訪問權限任意方法默認 public

九、學習路線圖建議

  1. 語法基礎:變量、流程控制、數組、方法、面向對象、異常、常用 API。
  2. 核心進階:集合源碼、泛型、註解、反射、IO/NIO、多線程並發、JVM 內存模型、類加載、GC 算法。
  3. 數據庫:MySQL 基礎、SQL 優化、事務隔離、JDBC、連接池、MyBatis/JPA。
  4. Web 基礎:HTTP、Servlet、JSP、Cookie/Session、Filter/Listener、Tomcat 原理。
  5. 框架生態:Spring IOC/AOP、Spring MVC、Spring Boot、Spring Cloud、MyBatis-Plus、Redis、MQ、ES。
  6. 分布式/微服務:CAP/BASE、註冊發現、配置中心、網關、鏈路追蹤、分布式事務、熔斷限流、K8s/Docker。
  7. 性能調優:JVM 調優、SQL 調優、緩存策略、併發優化、壓測分析、Arthras/JProfiler。

總結

Java 入門看似知識點碎雜,實則脈絡清晰:語法→類庫→框架→架構→生態。建立「基本類型 vs 包裝類、值傳遞本質、集合底層結構、多態動態分發、接口面向契約、異常分層處理、線程安全核心」等核心心智模型,配合大量敲代碼、讀源碼、寫博客、做項目,即可從語法掌握進化為工程思維,踏上 Java 開發者成長之路。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
包核心內容
java.lang基礎類:Object、String、Math、System、Thread、Exception、包裝類(無需 import)
java.util集合框架、日期時間、工具類、正則、隨機、Base64
java.io流式 IO:InputStream/OutputStream、Reader/Writer、File、序列化
java.nio新 IO:Buffer、Channel、Selector、Path、Files、零拷貝、內存映射
java.net網絡:URL、Socket、ServerSocket、HttpURLConnection、URI
java.sqlJDBC:Connection、Statement、PreparedStatement、ResultSet、DataSource
java.timeJava 8+ 日期時間:LocalDateTime、ZonedDateTime、Duration、Period、DateTimeFormatter
java.util.concurrent並發包:Executor、Future、Lock、AQS、原子類、並發集合、線程池
javax.servletServlet API:Servlet、Filter、Listener、HttpServletRequest/Response