一、Java語言概述與開發環境、第一個java程式

来源:https://www.cnblogs.com/LuMingfei/archive/2019/07/13/11181997.html
-Advertisement-
Play Games

目錄: 1.1 Java特點 1.2 Java程式運行機制 1.3 安裝JDl和配置環境變數 1.4 第一個JAVA程式 1.5 第一個JAVA程式的含義 前言 Java語言歷時近二十年,已發展成為人類電腦歷史上影響深遠的編程語言,從某種程度上來看,它甚至超出了編程語言的範疇,成為一種開發平臺,一 ...


目錄:

1.1 Java特點

1.2 Java程式運行機制

1.3 安裝JDl和配置環境變數

1.4 第一個JAVA程式

1.5 第一個JAVA程式的含義

前言

Java語言歷時近二十年,已發展成為人類電腦歷史上影響深遠的編程語言,從某種程度上來看,它甚至超出了編程語言的範疇,成為一種開發平臺,一種開發規範。

Java語言是一門非常純粹的面向對象編程語言,它吸收了C++語言的各種優點,又摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程式員以優雅的思維方式進行複雜的編程開發。

一、Java語言概述與開發環境

1.1 Java特點

1)面向對象

2)免費開源

3)簡單

4)安全性高

5)垃圾自動回收(相對C++)

6)跨平臺

1.2 Java程式運行機制

1)先編譯,再解釋執行

編寫源文件-->編譯器-->位元組碼(.class)-->啟動JVM解釋並執行位元組碼文件

 

2)JDK、JRE與JVM

JDk(Java Development Kit):Java開發工具包

JDK是Java開發工具包,是Sun針對Java開發員的產品。

JDK中包含JRE,在JDK的安裝目錄下有一個名為jre的目錄,裡面有兩個文件夾bin和lib,在這裡可以認為bin里的就是jvm,lib中則是jvm工作所需要的類庫,而jvm和 lib和起來就稱為jre。

JDK是整個JAVA的核心,包括了Java運行環境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基礎的類庫(即Java API 包括rt.jar)。

①SE(J2SE),standard edition,標準版,是我們通常用的一個版本,從JDK 5.0開始,改名為Java SE。

②EE(J2EE),enterprise edition,企業版,使用這種JDK開發J2EE應用程式,從JDK 5.0開始,改名為Java EE。

③ME(J2ME),micro edition,主要用於移動設備、嵌入式設備上的java應用程式,從JDK 5.0開始,改名為Java ME。

JRE(Java runtime environment):Java運行環境

JRE是運行基於Java語言編寫的程式所不可缺少的運行環境。也是通過它,Java的開發者才得以將自己開發的程式發佈到用戶手中,讓用戶使用。

JRE中包含了Java virtual machine(JVM),runtime class libraries和Java application launcher,這些是運行Java程式的必要組件。

與大家熟知的JDK不同,JRE是Java運行環境,並不是一個開發環境,所以沒有包含任何開發工具(如編譯器和調試器),只是針對於使用Java程式的用戶。

JVM(Java Virtual Machine):Java虛擬機

JVM就是我們常說的java虛擬機,它是整個java實現跨平臺的最核心的部分,所有的java程式會首先被編譯為.class的類文件,這種類文件可以在虛擬機上執行。

也就是說class並不直接與機器的操作系統相對應,而是經過虛擬機間接與操作系統交互,由虛擬機將程式解釋給本地系統執行。

只有JVM還不能成class的執行,因為在解釋class的時候JVM需要調用解釋所需要的類庫lib,而jre包含lib類庫。

JVM屏蔽了與具體操作系統平臺相關的信息,使得Java程式只需生成在Java虛擬機上運行的目標代碼(位元組碼),就可以在多種平臺上不加修改地運行。

 

   

1.3 安裝JDl和配置環境變數

1)JDK版本:jdk8

2)配置環境變數

①我的電腦右鍵--》屬性--》高級系統設置--》環境變數。

②在系統變數中新建一個變數:

   變數名:JAVA_HOME

   變數值:你安裝JDK的路徑,預設路徑為:C:\Program Files\Java\jdk1.8.0_66;

③在Path的變數值中添加:

   %JAVA_HOME%\bin;

註:Path是在命令行上輸入java命令時,用來指示操作系統去哪個目錄找java的相關程式。

④點擊確定(必須三個確定都點過之後,才會生效!)

   ⑤檢驗環境變數是否配置成功:

  1. Win+R打開運行視窗;
  2. 輸入cmd,打開DOS視窗;
  3. 輸入javac,如果出現以下情況,則表明javac命令正常。
  4. 輸入javac,如果出現以下情況,則表明環境變數配置成功。

如果出現其他提示,則表明環境變數配置失敗,請你檢查環境變數是否配置正確,安裝路徑是否正確。

1.4 第一個JAVA程式

1)打開d盤,新建一個記事本,打開;

2)輸入以下代碼:    註:字母區分大小寫。

 

public class Test {
    public static void main(String[] args) {
        System.out.println("hello world!");
    }
}

 

3)保存退出,重命名記事本為:Test.java

  註:①名字應和代碼中public class Test {} 中Test保持一致。

         ②確保文件尾碼名更改為.java

4)打開DOS視窗(不知道在哪打開的同學參照環境變數的打開方式),輸入D:進入D盤。

5)編譯源文件:

   輸入:javac Test.java

   如果沒有報錯,則證明編譯成功。

6)解釋執行class文件:

   輸入:java Test

1.5 第一個JAVA程式的含義

1)public class Test {}

Public 訪問修飾符,表示公共的意思。

Class:定義類的關鍵詞。

Test:類名。

類名的命名規則:

①  以包含字母,數字,下劃線,$,各國語言(不建議)。

②  不能以數字開頭。

③  不能使用java關鍵字。

④  區分大小寫。

命名規範:

①  見名知義。

②  每個單詞首字母大寫,其餘字母小寫。

註意事項:

①  類的修飾符Public可以省略不寫

②  如果類的修飾符有Public,則源文件名必須和Public修飾的類名保持一致。

③   一個源文件中可以寫多個類,但是Public類最多只能寫一個。(建議一個源文件中僅寫一個類)

2)public static void main(String[] args) {}

public:訪問修飾符,在此處不可省略。

static:關鍵詞,靜態的,靜止的。

void:關鍵詞,無返回值。

main:方法名,表示此方法為程式入口方法。

3)System.out.println("hello world!");

System.out.println(); :輸出一行數據,並換行

System.out.print(); :輸出一行數據,不換行

4)Java常用註釋:

多行註釋: /*  註釋內容  */

單行註釋: //註釋內容

註:註釋用來解釋說明你的代碼,用戶看不到註釋內容,電腦不執行註釋內容。

5)轉義符,使用引號引起來

\n:換行符,如:

System.out.println(“今天星期一。\n明天星期二。”);

\t:製表符,如:

System.out.println(“姓名:\t胡歌\n年齡:\t36歲”);

特殊的:在輸出內容中包含雙引號,則需要使用\轉義,如:

System.out.println(“我們現在學習的是\“Java\”語言”);

         在輸出內容中包含路徑,也需使用\轉義,如:

System.out.println(“C:\\Program Files\\Java\\jdk1.8.0_66\\bin”);

或:

System.out.println(“C:/Program Files/Java/jdk1.8.0_66\\bin”);

 


 

 文中涉及到的文件可私信我獲取


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

-Advertisement-
Play Games
更多相關文章
  • Java 流(Stream)、文件(File)和IO Java.io包幾乎包含了所有操作輸入、輸出需要的類。所有這些流類代表了輸入源和輸出目標。 Java.io包中的流支持很多種格式,比如:基本類型、對象、本地化字元集等等。 一個流可以理解為一個數據的序列。輸入流表示從一個源讀取數據,輸出流表示向一 ...
  • Mybatis 持久層框架,數據訪問層 mybatis是一個優秀的基於java的持久層框架,它內部封裝了jdbc,使開發者只需要關註sql語句本身,而不需要花費精力去處理載入驅動,創建連接,創建statement等繁雜的過程,使用ORM思想實現了結果集的封裝 ORM:Object Relationa ...
  • 先來些簡單的問題 “你用過HashMap嗎?” “什麼是HashMap?你為什麼用到它?” 幾乎每個人都會回答“是的”,然後回答HashMap的一些特性,譬如HashMap可以接受null鍵值和值,而HashTable則不能;HashMap是非synchronized;HashMap很快;以及Has ...
  • python函數修飾符@的作用是為現有函數增加額外的功能,常用於插入日誌、性能測試、事務處理等等。 ...
  • 1、JPA、Hibernate、Mybatis簡單瞭解 1.JPA:本身是一種ORM規範,不是ORM框架.由各大ORM框架提供實現. 2.Hibernate:目前最流行的ORM框架,設計靈巧,文檔豐富(完全自動操作),只是性能不好控制(自己去控制性能,不是很好控制)。 Hibernate是一個完整的 ...
  • 基於webpack4實踐:開始:打開控制面板,制定到創建Webpack的文件夾。 並創建初始配置文件package.json 輸入命令:npm init -y,在文件夾中出現一個package.json文件,並出現一個文件夾“node_modules” 接著就是安裝webpack 插件了,輸入命令: ...
  • 之乎者助得甚? 給定字元串$s$和序列$w$,試求 $$ \max_{1\le i using namespace std; const int N=1e5+10; int n,w[N],sa[N],ht[N],rc[N]; char s[N]; void buildSa() { static in ...
  • 題目 "P1018 乘積最大 " 解析 區間DP 設$f[i][j]$表示選$i$個數,插入$j$個乘號時的最大值 設$num[i][j]$是$s[i,j]$里的數字 轉移方程就是$f[i][k] = max(f[i][k], f[j][k 1] num[j + 1][i])$ $i$為當前區間長度 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...