国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【JavaSE】初識java

這篇具有很好參考價值的文章主要介紹了【JavaSE】初識java。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

Java語言概述

Java是什么

Java語言重要性

語言廣泛使用程度

工作領(lǐng)域

在校招中的崗位需求?編輯

Java語言發(fā)展簡史

Java語言特性

?編輯Java開發(fā)環(huán)境安裝

初識Java的main方法

main方法示例

運行Java程序

JDK、JRE、JVM之間的關(guān)系

注釋

基本規(guī)則

注釋規(guī)范

標識符

?編輯關(guān)鍵字

總結(jié)?


Java語言概述

Java是什么

Java是一種優(yōu)秀的程序設(shè)計語言,它具有令人賞心悅目的語法和易于理解的語義

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

不僅如此,Java還是一個有一系列計算機軟件和規(guī)范形成的技術(shù)體系,這個技術(shù)體系提供了完整的用于軟件開發(fā)和跨平臺部署的支持環(huán)境,并廣泛應(yīng)用于嵌入式系統(tǒng)、移動終端、企業(yè)服務(wù)器、大型機等各種場合

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

Java語言重要性

語言廣泛使用程度


下圖數(shù)據(jù)來自于TIOBE編程語言社區(qū)2017年12月和2018年10月最新的排行榜,常年占據(jù)語言排行榜榜首,是近些年最火的編程語言之一。

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

TIOBE 編程語言社區(qū)排行榜是編程語言流行趨勢的一個指標,每月更新,這份排行榜排名基于互聯(lián)網(wǎng)上有經(jīng)驗的程序員、 課程和第三方廠商的數(shù)量。排名使用著名的搜索引擎(諸如 Google、MSN、Yahoo!、Wikipedia、YouTube 以及 Baidu 等)進行計算

工作領(lǐng)域

Java語言目前在IT領(lǐng)域的應(yīng)用是非常廣泛的,掌握Java語言可以從事不少IT行業(yè)的相關(guān)開發(fā)崗位,具體包括

企業(yè)級系統(tǒng)
比如大型復(fù)雜的企業(yè)級軟件系統(tǒng),Java的安全機制以及跨平臺性的優(yōu)勢,其在分布式系統(tǒng)領(lǐng)域開發(fā)中有廣泛應(yīng)用,涉及到金融、電信、交通、電子商務(wù)、ERP系統(tǒng)等。
Web開發(fā)領(lǐng)域
Java語言在設(shè)計初期,趕上了互聯(lián)網(wǎng)發(fā)展的風口,當時就瞄準了互聯(lián)網(wǎng)開發(fā),憑借穩(wěn)定的性能表現(xiàn)和較好的擴展性,Java語言一直是大型互聯(lián)網(wǎng)平臺的重要解決方案。
android平臺應(yīng)用

Android是一種智能手機操作系統(tǒng),Java是一門非常流行的編程語言。Android上的應(yīng)用程序就是大多是用Java編寫的,Android的SDK大部分就是直接將Java SDK翻譯過來的,所以具有Java基礎(chǔ),也可以快速上手Android開發(fā)。
大數(shù)據(jù)平臺開發(fā)
大數(shù)據(jù)相關(guān)的各類框架,比如:Hadoop、spark、storm、flink等,以及各種中間件flume、kafka、sqoop等,這些框架以及工具等大多數(shù)是用Java語言開發(fā)的,隨著大數(shù)據(jù)技術(shù)的落地應(yīng)用,Java在大數(shù)據(jù)領(lǐng)域的應(yīng)用前景也是比較廣闊的

除上述開發(fā)領(lǐng)域外,Java在游戲領(lǐng)域、人工智能領(lǐng)域、科學計算領(lǐng)域、嵌入式領(lǐng)域也有一定的應(yīng)用。因此學好Java,將來就業(yè)的選擇也會非常廣泛


在校招中的崗位需求

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

從上述位置需求中可以看出,由于應(yīng)屆生缺少實際工作經(jīng)驗,因此校招中企業(yè)更看重學生的基礎(chǔ),也就是:語言、數(shù)據(jù)結(jié)構(gòu)/算法、操作系統(tǒng)、網(wǎng)絡(luò)、數(shù)據(jù)庫等,其他的屬于加分項

Java語言發(fā)展簡史

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)
Java 語言源于 1991 年 4 月,Sun 公司 James Gosling博士 領(lǐng)導(dǎo)的綠色計劃(Green Project) 開始啟動,此計劃最初的目標是開發(fā)一種能夠在各種消費性電子產(chǎn)品(如機頂盒、冰箱、收音機等)上運行的程序架構(gòu)。這個就是Java的前身: Oak (得名與Java創(chuàng)始人James Gosling辦公室外的一棵橡樹),但由于這些智能化家電的市場需求沒有預(yù)期的高,Sun公司放棄了該項計劃。隨著1995年代互聯(lián)網(wǎng)的發(fā)展,Sun公司看見Oak在互聯(lián)網(wǎng)上應(yīng)用的前景,于是改造了Oak,于1995年5月以Java的名稱正式發(fā)布,并提出“Write once, Run anywhere" 的口號
【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

Java語言特性

以下Java語言特性來自于Java白皮書:

1. 簡單性
Java語法是C++語法的一個“純凈版本”,相當于對C++做了一個減法。這里沒有頭文件、指針運算(甚至指針語法)、結(jié)構(gòu)、聯(lián)合、操作符重載、虛基類等等。不僅如此,Java開發(fā)環(huán)境遠遠超出大多數(shù)其他編程語言的開發(fā)環(huán)境。
2. 面向?qū)ο?/strong>
什么是面向?qū)ο螅?/span>在Java的世界里,一切皆對象。比如:人、狗、手機、電腦等都是對象。所謂面相對象,就是依靠對象之間的交互來完成事情,比如:人用手機網(wǎng)上購物,狗吃骨頭...Java的面向?qū)ο筇匦耘cC++旗鼓相當,與C++的主要不同點在于多重繼承。在Java中,取而代之的是更簡單的接口概念。而且與C++相比,Java提供了更豐富的運行時自省功能。
3. 分布式(微服務(wù))
Java有豐富的例程庫,用于處理像HTTP和FTP之類的TCP/IP協(xié)議。Java應(yīng)用程序能夠通過URL打開和訪問網(wǎng)絡(luò)上的對象,其便捷程度就好像訪問本地文件一樣。
4. 健壯性
Java與C++最大的不同在于Java采用的指針模型可以消除重寫內(nèi)存和損壞數(shù)據(jù)的可能性(對于曾經(jīng)花費幾個小時來檢查由于指針bug而引起內(nèi)存沖突的人來說,一定很喜歡Java的這一特性)。不僅如此,Java編譯器能夠檢測許多在其他語言中僅在運行時才能夠檢測出來的問題。
5. 安全性
Java適用于網(wǎng)絡(luò)/分布式環(huán)境。為了達到這個目標,在安全性方面投入了大量的精力。使用Java可以構(gòu)建防病毒、防篡改的系統(tǒng)從一開始,Java就設(shè)計成能夠防范常見的各種攻擊:

運行時堆棧溢出。蠕蟲和病毒常用的攻擊手段。
破壞自己進程空間之外的內(nèi)存。
未經(jīng)授權(quán)讀寫文件

6. 體系結(jié)構(gòu)中立

編譯器生成一個體系結(jié)構(gòu)中立的目標文件格式,按照該中規(guī)范生成的文件,只要有Java運行時系統(tǒng),這些編譯后的代碼就可以在許多處理器上運行。Java編譯器通過生成與特定計算機體系結(jié)構(gòu)無關(guān)的字節(jié)碼指令來實現(xiàn)這一特性。精心設(shè)計的字節(jié)碼不僅可以很容易的在任何機器上解釋執(zhí)行,而且還可以動態(tài)地翻譯成本地機器代碼。這就是為什么可以:“Wrice once,Run anywhere”

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)
而且其他語言編寫的程序,在編譯后如果能夠嚴格按照字節(jié)碼文件的規(guī)范生成.class文件,也可以在JVM上運行
【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)
7. 可移植性
與C/C++不同,Java規(guī)范中沒有“依賴具體實現(xiàn)的地方”?;緮?shù)據(jù)類型的大小以及有關(guān)運算都做了明確的說明。例如,Java中的int永遠是32位的整數(shù),而在C/C++中,int可能是16位整數(shù)、32位整數(shù),也可能是編譯器提供商指定的其他大小。在Java中,數(shù)據(jù)類型具有固定的大小,這消除了代碼移植時令人頭疼的主要問題。
8. 解釋性
Java為了實現(xiàn)與平臺無關(guān),自己維護了一套基于棧架構(gòu)的指令集,Java源代碼經(jīng)過編譯之后,字節(jié)碼文件中的指令就是按照自己的指令集來組織的,但是在具體硬件環(huán)境中運行時,系統(tǒng)并不能識別,因為Java程序在執(zhí)行時,Java解釋器會逐條的將字節(jié)碼文件中的指令翻譯成CPU的指令集。
9. 高性能
邊解釋邊執(zhí)行,垃圾會說等導(dǎo)致了Java代碼運行效率偏低,近年來JVM也在不斷的優(yōu)化,比如:JIT(即時編譯器),熱點代碼探測,讓Java程序的執(zhí)行效率大幅提高,在有些場合不亞于C/C++。
10. 多線程

Java在當時很超前。它是第一個支持并發(fā)程序設(shè)計的主流語言。多線程可以帶來更好的交互響應(yīng)和實時行為。并發(fā)程序設(shè)計絕非易事,但是Java在這方面表現(xiàn)出色,可以很好的管理這個工作。
11. 動態(tài)性
Java與C/C++相比更加具有動態(tài)性。它能夠適應(yīng)不斷發(fā)展的環(huán)境。庫中可以自由的添加新方法和實例變量,而對客戶端沒有任何影響。在Java中找出運行時類型信息十分簡單(反射的特性,后續(xù)會學到)

Java開發(fā)環(huán)境安裝

Windows下最簡單的Java環(huán)境安裝指南 - 大博哥VV6 - 博客園 (cnblogs.com)
linux安裝jdk環(huán)境(多種方式)_蒙蒙的林先生的博客-CSDN博客
mac系統(tǒng)下安裝Java開發(fā)環(huán)境(一)——JDK安裝-百度經(jīng)驗 (baidu.com)
Java 軟件 https://pan.baidu.com/s/1X7zPb-YT11xR_UDqjN-oJw 提取碼:r471

初識Java的main方法

?main方法示例

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello,world");
    }
}

如上展示的就是最簡單的一個Java程序,可能同學們看到后一頭霧水,可以說,Java的main方法應(yīng)該是當前主流編程語言中最“長”的。通過上述代碼,我們可以看到一個完整的Java程序的結(jié)構(gòu),Java程序的結(jié)構(gòu)由如下三個部分組成:

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

注意:在一個源文件中只能有一個public修飾的類,而且源文件名字必須與public修飾的類名字相同

運行Java程序

Java是一門半編譯型、半解釋型語言。先通過javac編譯程序把源文件進行編譯,編譯后生成的.class文件是由字節(jié)碼組成的平臺無關(guān)、面向JVM的文件。最后啟動java虛擬機來運行.class文件,此時JVM會將字節(jié)碼轉(zhuǎn)換成平臺能夠理解的形式來運行。

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)注意:在運行Java程序前,必須先安裝好JDK(Java Development Kit即Java開發(fā)工具包),JDK里面就包含了javac和java工具,Java程序最終是在JVM(Java虛擬機)中運行的

JDK、JRE、JVM之間的關(guān)系

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

JDK(Java Development Kit):Java開發(fā)工具包,提供給Java程序員使用,包含了JRE,同時還包含了編譯器javac與自帶的調(diào)試工具Jconsole、jstack等。
JRE(Java Runtime Environment):Java運行時環(huán)境,包含了JVM,Java基礎(chǔ)類庫。是使用Java語言編寫程序運行的所需環(huán)境。
JVM:Java虛擬機,運行Java代碼

編寫和運行第一個Java程序時,可能會遇到的一些錯誤:
1. 源文件名后綴不是.java
2. 類名與文件名不一致
3. main方法名字寫錯:mian
4. 類沒有使用public修飾
5. 方法中語句沒有以分號結(jié)尾
6. 中文格式的分號
7. JDK環(huán)境沒有配置好,操作系統(tǒng)不能識別javac或者java命令

注釋

注釋是為了讓代碼更容易被讀懂而附加的描述信息. 不參與編譯運行, 但是卻非常重要.時刻牢記! 代碼寫出來是為了給人看的, 更是為了給三個月后的你自己看的

基本規(guī)則

Java中的注釋主要分為以下三種

單行注釋:// 注釋內(nèi)容(用的最多)
多行注釋:/* 注釋內(nèi)容*/(不推薦)
文檔注釋: /** 文檔注釋 */(常見于方法和類之上描述方法和類的作用),可以被javadoc工具解析,生成一套以網(wǎng)頁文件形式體現(xiàn)的程序說明文檔
注意:
1. 多行注釋不能嵌套使用
2. 不論是單行還是多行注釋,都不參與編譯,即編譯之后生成的.class文件中不包含注釋信息。

/**
文檔注釋:
@version v1.0.0
@author will
作用HelloWorld類,入門第一個程序練習
*/
public class HelloWorld{
/*多行注釋:
1. main方法是Java程序的入口方法
2. main函數(shù)的格式是固定的,必須為public static void main(String[] args)
*/
/**
main方法是程序的入口函數(shù)
@param args 命令行參數(shù)。
*/
public static void main(String[] args){
// 單行注釋:System.out.println是Java中標準輸出,會將內(nèi)容輸出到控制臺
System.out.println("Hello World");
}
} -
-----------------------------------------------------------------------------------
// 在cmd中,使用javadoc工具從Java源碼中抽離出注釋
// -d 創(chuàng)建目錄 myHello為目錄名
// -author 顯示作者
// -version 顯示版本號
// -encoding UTF-8 -charset UTF-8 字符集修改為UTF-8
javadoc -d myHello -author -version -encoding UTF-8 -charset UTF-8 HelloWorld.java

?注釋規(guī)范

1. 內(nèi)容準確: 注釋內(nèi)容要和代碼一致, 匹配, 并在代碼修改時及時更新.
2. 篇幅合理: 注釋既不應(yīng)該太精簡, 也不應(yīng)該長篇大論.
3. 使用中文: 一般中國公司都要求使用中文寫注釋, 外企另當別論.
4. 積極向上: 注釋中不要包含負能量(例如 領(lǐng)導(dǎo) SB 等)

標識符

在上述程序中,Test稱為類名,main稱為方法名,也可以將其稱為標識符,即:在程序中由用戶給類名、方法名或者變量所取的名字。

關(guān)鍵字

通過觀察上述程序可以發(fā)現(xiàn),public、class以及static等顏色會發(fā)生變化,將這些具有特殊含義的標識符稱為關(guān)鍵字。即:關(guān)鍵字是由Java語言提前定義好的,有特殊含義的標識符,或者保留字。
注意:用戶不能使用關(guān)鍵字定義標識符。在Java中關(guān)鍵字有很多,這里給大家列出來一部分,先了解下后序在逐一詳細解釋。

【JavaSE】初識java,javaSE,java,開發(fā)語言,基礎(chǔ)

總結(jié)?

關(guān)于《初始java》就講解到這兒,歡迎各位留言交流以及批評指正,如果文章對您有幫助或者覺得作者寫的還不錯可以點一下關(guān)注,點贊,收藏支持一下。

?文章來源地址http://www.zghlxwxcb.cn/news/detail-599477.html

到了這里,關(guān)于【JavaSE】初識java的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【JavaSE】Java基礎(chǔ)語法(十二):ArrayList

    【JavaSE】Java基礎(chǔ)語法(十二):ArrayList

    集合和數(shù)組的區(qū)別 : 共同點:都是存儲數(shù)據(jù)的容器 不同點:數(shù)組的容量是固定的,集合的容量是可變的 ArrayList : 可調(diào)整大小的數(shù)組實現(xiàn) 是一種特殊的數(shù)據(jù)類型,泛型。 怎么用呢 ? 在出現(xiàn)E的地方我們使用引用數(shù)據(jù)類型替換即可 舉例:ArrayList, ArrayList 成員方法 : 案例需求

    2024年02月06日
    瀏覽(26)
  • 【JavaSE】Java基礎(chǔ)語法(二十五):異常

    【JavaSE】Java基礎(chǔ)語法(二十五):異常

    異常的概述 異常就是程序出現(xiàn)了不正常的情況 異常的體系結(jié)構(gòu) 編譯時異常 都是Exception類及其子類 必須顯示處理,否則程序就會發(fā)生錯誤,無法通過編譯 運行時異常 都是RuntimeException類及其子類 無需顯示處理,也可以和編譯時異常一樣處理 圖示 如果程序出現(xiàn)了問題,我們

    2024年02月06日
    瀏覽(39)
  • 【JavaSE】Java基礎(chǔ)語法(十六):抽象類

    【JavaSE】Java基礎(chǔ)語法(十六):抽象類

    當我們在做子類共性功能抽取時,有些方法在父類中并沒有具體的體現(xiàn),這個時候就需要抽象類了! 在Java中,一個沒有方法體的方法應(yīng)該定義為抽象方法,而類中如果有抽象方法,該類必須定義為抽 象類! 抽象類和抽象方法必須使用 abstract 修飾 抽象類中不一定有抽

    2024年02月07日
    瀏覽(50)
  • 【JavaSE】Java基礎(chǔ)語法(二十一):內(nèi)部類

    【JavaSE】Java基礎(chǔ)語法(二十一):內(nèi)部類

    內(nèi)部類概念 在一個類中定義一個類。舉例:在一個類A的內(nèi)部定義一個類B,類B就被稱為內(nèi)部類 內(nèi)部類定義格式 格式舉例: 內(nèi)部類的訪問特點 內(nèi)部類可以直接訪問外部類的成員,包括私有 外部類要訪問內(nèi)部類的成員,必須創(chuàng)建對象 示例代碼: 成員內(nèi)部類的定義位置 在類中

    2024年02月07日
    瀏覽(32)
  • 【JavaSE】Java基礎(chǔ)語法(三十一):可變參數(shù)

    【JavaSE】Java基礎(chǔ)語法(三十一):可變參數(shù)

    可變參數(shù)介紹 可變參數(shù)又稱參數(shù)個數(shù)可變,用作方法的形參出現(xiàn),那么方法參數(shù)個數(shù)就是可變的了 方法的參數(shù)類型已經(jīng)確定,個數(shù)不確定,我們可以使用可變參數(shù) 可變參數(shù)定義格式 可變參數(shù)的注意事項 這里的變量其實是一個數(shù)組 如果一個方法有多個參數(shù),包含可變參數(shù),可

    2024年02月08日
    瀏覽(22)
  • 【JavaSE】Java基礎(chǔ)語法(三十二):Stream流

    【JavaSE】Java基礎(chǔ)語法(三十二):Stream流

    案例需求 按照下面的要求完成集合的創(chuàng)建和遍歷 創(chuàng)建一個集合,存儲多個字符串元素 把集合中所有以\\\"張\\\"開頭的元素存儲到一個新的集合 把\\\"張\\\"開頭的集合中的長度為3的元素存儲到一個新的集合 遍歷上一步得到的集合 原始方式示例代碼 使用Stream流示例代碼 Stream流的好處

    2024年02月07日
    瀏覽(31)
  • 【JavaSE】Java基礎(chǔ)語法(三十四):實現(xiàn)多線程

    【JavaSE】Java基礎(chǔ)語法(三十四):實現(xiàn)多線程

    是指從軟件或者硬件上實現(xiàn)多個線程并發(fā)執(zhí)行的技術(shù)。 具有多線程能力的計算機因有硬件支持而能夠在同一時間執(zhí)行多個線程,提升性能。 并行:在同一時刻,有多個指令在多個CPU上同時執(zhí)行。 并發(fā):在同一時刻,有多個指令在單個CPU上交替執(zhí)行。 進程:是正在運行的程序

    2024年02月08日
    瀏覽(21)
  • 【JavaSE】Java基礎(chǔ)語法(十三):Java 中的集合(十分全面)

    【JavaSE】Java基礎(chǔ)語法(十三):Java 中的集合(十分全面)

    List (對付順序的好幫?): 存儲的元素是有序的、可重復(fù)的。 Set (注重獨???的性質(zhì)): 存儲的元素是?序的、不可重復(fù)的。 Queue (實現(xiàn)排隊功能的叫號機): 按特定的排隊規(guī)則來確定先后順序,存儲的元素是有序的、可重復(fù)的。 Map (? key 來搜索的專家): 使?鍵值對(key-value)存

    2024年02月10日
    瀏覽(26)
  • 【JavaSE】Java基礎(chǔ)語法(三十三):File 一文詳解

    【JavaSE】Java基礎(chǔ)語法(三十三):File 一文詳解

    File類介紹 它是文件和目錄路徑名的抽象表示 文件和目錄是可以通過File封裝成對象的 對于File而言,其封裝的并不是一個真正存在的文件,僅僅是一個路徑名而已.它可以是存在的,也 可以是不存在的.將來是要通過具體的操作把這個路徑的內(nèi)容轉(zhuǎn)換為具體存在的 File類的構(gòu)造方法

    2024年02月06日
    瀏覽(39)
  • 【JavaSE】Java基礎(chǔ)語法(三十六):File & IO流

    【JavaSE】Java基礎(chǔ)語法(三十六):File & IO流

    java.io.File類是文件和目錄路徑名的抽象表示形式,主要用于文件和目錄的創(chuàng)建、查找和刪除等操作。 File:它是文件和目錄路徑名的抽象表示 文件和目錄可以通過File封裝成對象 File封裝的對象僅僅是一個路徑名。它可以是存在的,也可以是不存在的。 | 方法名 | 說明 | | —

    2024年02月07日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包