java基礎知識彙總(一)

来源:https://www.cnblogs.com/xu-sy122/p/18331121
-Advertisement-
Play Games

PART1: Java基礎知識概述與Java的下載安裝 1)Java語言概述: ① Java的發展史: 詹姆斯·高斯林(James Gosling) 1977年獲得了加拿大卡爾加里大學電腦科學學士學位,1983年獲得了美國卡內基梅隆大學電腦科學博士學位,畢業後到IBM工作,設計IBM第一代工作站 ...


PART1: Java基礎知識概述與Java的下載安裝

1)Java語言概述:

① Java的發展史:

  • 詹姆斯·高斯林(James Gosling)
  • 1977年獲得了加拿大卡爾加里大學電腦科學學士學位,1983年獲得了美國卡內基梅隆大學電腦科學博士學位,畢業後到IBM工作,設計IBM第一代工作站NeWS系統,但不受重視。後來轉至Sun公司,1990年,與Patrick,Naughton和Mike Sheridan等人合作“綠色計劃”,後來發展一套語言叫做“Oak”,後改名為Java。

② Java語言發展史:

  • Java Development Kit

    • 1.0.2
    • 1.1.1 → 1.1.6 → 1.1.7 → 1.1.8
    • 1.2.1
  • Java 2 SDK

    • 1.2.2
    • 1.3.0 → 1.3.1
    • 1.4.0 → 1.4.1 → 1.4.2 → 1.5.0(5.0) → 1.6.0(6.0) → 1.7.0(7.0)
    • jdk8

③ Java語言平臺版本:

  • J2SE (Java 2 Platform Standard Edition) 標準版:為開發普通桌面和商務應用程式提供的解決方案。該技術體系是其他兩者的基礎,可以完成一些桌面應用程式的開發。
  • J2ME (Java 2 Platform Micro Edition) 小型版:為開發電子消費產品和嵌入式設備提供的解決方案。
  • J2EE (Java 2 Platform Enterprise Edition) 企業版:為開發企業環境下的應用程式提供的一套解決方案。該技術體系中包含的技術如 Servlet、Jsp等,主要針對於Web應用程式開發。

④ Java語言的特點:

  • 簡單性
  • 解釋性
  • 面向對象
  • 高性能
  • 分散式處理
  • 多線程
  • 健壯性
  • 動態
  • 結構中立
  • 安全性
  • 開源
  • 跨平臺

⑤ JRE與JDK:

JRE與JDK

2)Java的安裝:

JDK可以在Oracle官網中下載(註意:這裡下載的是Java 8版本)。

PART2: Java程式執行流程

1)程式解析:

  • 編寫Java源代碼程式,擴展名為 .java
  • 在命令行模式中,輸入 javac 命令對源代碼進行編譯,生成位元組碼文件:
    javac 源文件名.java
    
  • 編譯完成後,如果沒有報錯信息,輸入 java 命令對 .class 位元組碼文件進行解釋運行,執行時不需要添加 .class 擴展名:
    java HelloWorld
    

2)運行與工作原理:

運行與工作原理

3)開發工具介紹:

編寫Java程式可以使用很多種工具:

  • Notepad(微軟操作系統自帶)
  • Notepad++
  • Eclipse
  • MyEclipse

4)編寫一段代碼Hello World:

  • 首先定義一個類:
    class 類名 {}
    
  • 在類定義後加上一對大括弧:
    class 類名 {
    }
    
  • 在大括弧中間添加一個主(main)方法/函數:
    public static void main(String [] args) { }
    
  • 在主方法的大括弧中間添加一行輸出語句:
    System.out.println("hello world");
    

5)常見錯誤:

  1. 文件擴展名隱藏導致編譯失敗
  2. class 寫錯(例如:Class claas…)
  3. 類名格式有問題(暫時全部使用英文)
  4. 類名後面的大括弧匹配不正確
  5. main 方法格式錯誤:
    public static void main(String [] args) { }
    
  6. main 方法大括弧缺失
  7. 列印語句拼寫錯誤:
    System.out.println("");
    
  8. 引號使用錯誤,使用成中文全形引號

PART3: 環境變數

1)Path環境變數配置的作用:

  1. 程式的執行需要使用外部指令 javac,但是 javac 指令僅僅能在JDK安裝目錄下的 bin 目錄下運行,因此程式只能寫入 bin 目錄。
  2. 程式開發過程中,不能將源代碼寫入JDK的安裝目錄,因此需要將源程式保存到任意位置的指定目錄(英文目錄),所以需要使 javac 指令在任意目錄下可以運行。

2)Path環境變數配置方式一:

通過配置 path 環境變數,將 javac 指令所在目錄也就是JDK安裝目錄下的 bin 目錄配置到 path 變數下,即可使 javac 指令在任意目錄下運行:

  • Win11/10系統:右鍵點擊桌面電腦 → 選擇屬性 → 選擇高級系統設置 → 選擇高級選項卡 → 點擊環境變數 → 下方系統變數中查找 path → 雙擊 path
  • XP系統:右鍵點擊桌面電腦 → 選擇屬性 → 選擇高級選項卡 → 點擊環境變數 → 下方系統變數中查找 path → 雙擊 path
  • 將JDK安裝目錄下的 bin 目錄添加到最左邊並添加分號:
    path %JAVA_HOME%\bin;
    

3)Classpath環境變數配置方式:

  • 創建新的變數名稱: classpath
  • 值設定為指定的還有 class 文件的目錄,多個目錄間使用分號(;)分割
  • 作用:使 classpath 目錄中的 .class 文件可以在任意目錄運行
  • 技巧:通常將配置的目錄最前面添加 . 配置,即便當前目錄,使 .class 文件搜索時首先搜索當前目錄,然後根據目錄配置的順序依次查找,找到後即運行,因此 classpath 目錄中的配置存在先後順序

4)Path與Classpath的區別:

  • path 環境變數裡面記錄的是可執行性文件,如 .exe 文件,對可執行文件先在當前路徑去找,如果沒找到就去 path 環境變數中配置的路徑去找
  • classpath 環境變數里記錄的是Java類的運行文件所在的目錄

PART4: 關鍵字、標識符

1) 關鍵字:

  • 關鍵字概述:被Java語言賦予特定含義的單詞
  • 關鍵字特點:
    • 組成關鍵字的字母全部小寫
  • 關鍵字註意事項:
    • gotoconst 作為保留字存在,目前並不使用
    • 類似IDEA這樣的集成工具,針對關鍵字有特殊的顏色標記,非常直觀
  • 所有關鍵字:
    關鍵字列表1
    關鍵字列表2

2)標識符:

  • 標識符概述:給類,介面,方法,變數等起名字時使用的字元序列
  • 組成規則:
    • 英文大小寫字母
    • 數字字元
    • $_
  • 註意事項:
    • 不能以數字開頭
    • 不能是Java中的關鍵字
    • 區分大小寫
  • 標識符的常見命名規則:
    • 包(其實就是文件夾,用於解決相同類名問題)
      • 單級和多級
    • 類或者介面
      • 一個單詞和和多個單詞
    • 方法和變數
      • 一個單詞和和多個單詞
    • 常量
      • 一個單詞和和多個單詞

3)註釋:

  • 註釋概述:用於解釋說明程式的文字
  • Java中註釋分類格式:
    • 單行註釋
      //註釋文字
      
    • 多行註釋
      /*  註釋文字  */
      
    • 文檔註釋
      /** 註釋文字 */
      
  • 註釋的好處:
    • 解釋說明程式,提高程式的閱讀性
    • 可以幫助我們排錯

註:(註釋是一個程式員必須要具有的良好編程習慣。初學者編寫程式可以養成習慣:先寫註釋再寫代碼。將自己的思想通過註釋先整理出來,在用代碼去體現。因為代碼僅僅是思想的一種體現形式而已。)

PART5: 常量與進位

1)常量:

  • 常量概述:
    • 在程式執行的過程中其值不可以發生改變
  • Java中常量分類:
    • 字面值常量
    • 自定義常量
  • 字元串常量:用雙引號括起來的內容
  • 整數常量:所有整數,例如 12, 23
  • 小數常量:所有小數,例如 12.34, 56.78
  • 字元常量:用單引號括起來的內容,例如 ‘a’, ’A’, ’0’
  • 布爾常量:較為特有,只有 true 和 false
  • 空常量:null

Java針對整數常量提供了4種表現形式:

  • 二進位:以 0b 開頭
  • 八進位:以 0 開頭
  • 十進位:整數預設是十進位的
  • 十六進位:以 0x 開頭

2)進位概述:

  • 進位:就是進位制,是人們規定的一種進位方法。對於任何一種進位--X進位,就表示某一位置上的數運算時是逢X進一位。二進位就是逢二進一,八進位是逢八進一,十進位是逢十進一,十六進位是逢十六進一。

不同進位的數據組成:

  • 二進位:由0,1組成。以 0b 開頭
  • 八進位:由0,1,…7組成。以 0 開頭
  • 十進位:由0,1,…9組成。整數預設是十進位的
  • 十六進位:由0,1,…9,a,b,c,d,e,f(大小寫均可)。以 0x 開頭

進位轉換:

  • 其他進位到十進位:通過十進位推出結論
    • 0b100, 0100, 0x100 轉換成十進位
  • 十進位到其他進位:通過十進位推出結論
    • 把 52 分別表示成二進位,八進位,十六進位

十進位和二進位的快速轉換:

  • 8421碼
    • 100 轉成二進位
    • 101101 轉成十進位

二進位和八進位,十六進位如何轉換:

  • 以十進位作為橋梁
    • 二進位到八進位:3位組合
      100 110
      
    • 二進位到十六進位:4位組合
      0010 0110
      

有符號數據表示法:

  • 在電腦內,有符號數有3種表示法:原碼、反碼和補碼。所有數據的運算都是採用補碼進行的。
    • 原碼:就是二進位定點表示法,即最高位為符號位,“0”表示正,“1”表示負,其餘位表示數值的大小。
    • 反碼:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
    • 補碼:正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。

這是Java的基礎知識的第一部分,後續我會跟進一些相應的練習題,還有後面的部分,希望喜歡的能夠點個關註。


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

-Advertisement-
Play Games
更多相關文章
  • title: 服務端渲染中的數據獲取:結合 useRequestHeaders 與 useFetch date: 2024/7/24 updated: 2024/7/24 author: cmdragon excerpt: 摘要:本文介紹Vue服務端渲染中使用useRequestHeaders獲取請 ...
  • 本文由leetcode的字元異位詞分組題目引入,記錄了javascript中對象的鍵的數據類型以及存在的數據類型轉換現象。 ...
  • 摘要:本文介紹Nuxt 3中useRequestEventHook的使用,可訪問請求路徑、方法和頭部信息,適用於SSR環境下處理請求邏輯,如中間件、插件及API路由。僅伺服器端生效,需註意安全性。 ...
  • 引言 在JavaScript開發中,設計模式是解決特定問題的有效手段。單例模式(Singleton Pattern)是其中一種常見且有用的模式。儘管網上有許多關於單例模式的解釋和實現,本篇將從實際工作中的需求出發,探討如何更好地理解和應用單例模式,以編寫更復用、更高效的代碼。 什麼是單例模式? 單例 ...
  • 手寫 Hibernate 系列 手寫 Hibernate ORM 框架 00-hibernate 簡介 手寫 Hibernate ORM 框架 00-環境準備 手寫 Hibernate ORM 框架 01-註解常量定義 手寫 Hibernate ORM 框架 02-實體 Bean 定義,建表語句自動 ...
  • 本文主要介紹了在使用Python進行面向對象編程時,異常的層級和如何使用繼承關係完成自定義自己項目中異常類,並以感測器數據採集為例進行講解。 ...
  • 拓展閱讀 Java Servlet 教程-20-自己手寫實現 spring mvc 整體思路 Java Servlet 教程-21-自己手寫 spring mvc 簡單實現 Spring Web MVC-00-重學 mvc mvc-01-Model-View-Controller 概覽 mvc-02 ...
  • 題目要求 給定兩個字元串 s 和 t ,編寫一個函數來判斷 t 是否是 s 的字母異位詞。 註意:若 s 和 t 中每個字元出現的次數都相同,則稱 s 和 t 互為字母異位詞。 由於字元在電腦記憶體中是以ASCII碼或Unicode編碼的形式存儲的,我們可以得出'a'在ASCII表中的值是97,'A ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...