您好,登錄后才能下訂單哦!
核心思想:面向對象編程,繼承,高兼容(代碼移植性強),避免重復造輪子,開源.
Java的起源和發展細節就不介紹了,Java是高級開發語言,類似C++,語法和C++ 有很多類似之處,但是做了些優化,主要是在編碼寫程序上的優化,避免內存泄露,避免指針復雜錯用等,Java中不可以直接操作指針,被隱藏。
Java程序從編寫到運行
A 編寫出正確的Java代碼 .java文件-->B 通過工具編譯成class文件 .class文件 --> C 運行在系統中的jvm虛擬機加載class文件 --> D jvm讀取class文件中的main方法開始一個系統進程 --> E 完成 Java程序開始運行 。
在D過程中有一個過程 --> jvm虛擬機加載class文件后,將.class翻譯成機器碼(類似系統底指令) 因系統而異,同一個class文件,在window環境 翻譯出的機器碼與Linux環境翻譯出的機器碼是不同的: 代碼移植性強的根本(jvm虛擬機)
Java 中的成員 : jvm虛擬機,jre,jdk
jvm虛擬機
Java代碼的加載器、編譯器、引擎負載加載(讀取).class文件
上文中有提到虛擬機,將class文件翻譯成系統能識別的機器碼,因此jvm是Java程序的必要環節,也說明不同的系統,jvm虛擬機版本是不同的。
jvm虛擬機由C語言和匯編語言編寫構成, 是Java程序運行的根本,Java程序運行首先需要運行jvm.
網絡解釋: JVM(JavaVirtualMachine,Java虛擬機)是JRE的一部分。它是一個虛構出來的計算機,是通過在實際的計算機上仿真模擬各種計算機功能來實現的。JVM有自己完善的硬件架構,如處理器、堆棧、寄存器等,還具有相應的指令系統。Java語言最重要的特點就是跨平臺運行。使用JVM就是為了支持與操作系統無關,實現跨平臺。
jre(Java Runtime Environment)
Java程序運行環境,其中包含了jvm虛擬機。Java程序需要運行時需要的環境,既jre.
jdk (Java Development Kit)
Java 語言的軟件開發工具包 (SDK) Java軟件開發環境,程序員編寫Java程序時需要的工具。 與jre的區別 包含jre,多了一些編譯工具,比如將.java 文件編譯成 .class文件
Java開發中常用的技術思想、框架、工具
技術思想
面向對象
Java中任何事物都可以看做對象,任何事物從對象角度出發,解決問題從對象角度出發。
繼承
Java中對象可以被繼承,將可以使用被繼承對象所有公共屬性,公共方法。繼承者為子類,被繼承者為父類,在Java中一切對象的頂級超類是Object
多態
多態是同一個行為具有多個不同表現形式或形態的能力。
多態就是同一個接口,使用不同的實例而執行不同操作。 具體涉及到java中接口的知識。
多線程
一個線程處理一個事物,多個線程在同事間內執行各自的事物,互不影響。
高并發
在有限的硬件資源情況下,短時間內大量線程啟動運行并處理事物。
長連接
在與可通信端頻繁通信交換數據時需要用到的技術,如數據庫連接一般是長連接;特點:連接數較少,通訊頻繁。 想對的短連接:連接數多,同一連接短時間內連續通訊較少。
nio
非阻塞io,解決網絡數據傳輸阻塞問題,當兩端通信有連接時,不一定馬上接受數據,這樣會引起線程等待發送數據造成的阻塞,nio提供緩沖區,有數據的時候通過通道將通信數據寫入緩沖區,沒有數據則先執行別的線程,避免阻塞。
框架
spring
SpringFrameWork,春天。核心是控制反轉IoC(Inversion of Control 也稱依賴注入)和面向切面編程AOP(Aspect Oriented Programming)java中非常流行的技術框架與框架設計思想。 秉承高內聚,低耦合的思想。沒有侵略性,對所有別的技術框架能夠很好的兼容。(避免重復造輪子的一種具體實現)
springmvc
Spring MVC屬于SpringFrameWork的后續產品,已經融合在Spring Web Flow里面。Spring 框架提供了構建 Web 應用程序的全功能 MVC 模塊(摘自百度)。web框架,前端控制層訪問框架。
mybatis
輕量級持久層框架,持久層開發較高效框架,在迭×××發、網絡項目中使用較多。
MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,并且改名為MyBatis 。2013年11月遷移到Github。MyBatis 是一款優秀的持久層框架,它支持定制化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可以使用簡單的 XML 或注解來配置和映射原生信息,將接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java對象)映射成數據庫中的記錄。(摘自百度)
hibernate
Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,它將POJO與數據庫表建立映射關系,是一個全自動的orm框架,hibernate可以自動生成SQL語句,自動執行,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。(摘自百度)
springboot
springboot是以spring為基礎的多技術集成的高效快速項目開發框架,核心還是spring,但是集成封裝好了很多其他技術(如redis、mybatis等),免去了項目開發中一些重復繁瑣的過程
springcloud
springcloud是分布式架構技術,springcloud建立在springboot的基礎上,主要是在分布式環境下,將springboot項目集中管理的的分布式開發架構。
netty
nio技術具體實現框架。
工具
eclipse
使用java、C 等語言來開發項目的工具。
idea
使用java、C 等語言來開發項目的工具,和eclipse一樣是比較好用的項目開發工具,甚至比eclipse功能更多更強大,不過需要付費。
maven
項目開發jar資源依賴管理工具,項目打包工具,使項目開發更高效。
tomcat
web項目運行容器,現在springboot框架內用集成tomcat,使用springboot開發可以不需要額外配置tomcat。
歡迎工作一到八年的Java工程師朋友們加入Java高級交流群:828697593
本群提供免費的學習指導 架構資料 以及免費的解答
不懂得問題都可以在本群提出來 之后還會有直播平臺和講師直接交流噢
哦對了,喜歡就別忘了關注一下哦~
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。