java特性
『壹』 java主要有那些特性
Java主要有哪些的特性?
Java由美國SUN公司(被oracle公司收購)發明於1995年,是目前業界應用最廣泛、使用人數最多的語言,連續多年排名世界第一,可以稱之為「計算機語言界的英語」。
那麼Java這么高的評價它的特點有哪些,下面我來為題主解答:
一、跨平台/可移植性
這是Java的核心優勢。Java在設計時就很注重移植和跨平台性。比如:Java的int永遠都是32位。不像C++可能是16,32,可能是根據編譯器廠商規定的變化。這樣的話程序的移植就會非常麻煩。
Java首先利用文本編輯器編寫 Java源程序,源文件的後綴名為.java;再利用編譯器(javac)將源程序編譯成位元組碼文件,位元組碼文件的後綴名為.class; 最後利用虛擬機(解釋器,java)解釋執行。如下圖所示:
二、安全性
Java適合於網路/分布式環境,為了達到這個目標,在安全性方面投入了很大的精力,使Java可以很容易構建防病毒,防篡改的系統。比如Java取消了強大但又危險的指針。由於指針可進行移動運算,指針可隨便指向一個內存區域,而不管這個區域是否可用,這樣做是危險的。
三、面向對象
面向對象是一種程序設計技術,非常適合大型軟體的設計和開發。由於C++為了照顧大量C語言使用者而兼容了C,使得自身僅僅成為了帶類的C語言,多少影響了其面向對象的徹底性!Java則是完全的面向對象語言。
四、簡單性
Java就是C++語法的簡化版,我們也可以將Java稱之為「C++-」。跟我念「C加加減」,指的就是將C++的一些內容去掉;比如:頭文件,指針運算,結構,聯合,操作符重載,虛基類等等。同時,由於語法基於C語言,因此學習起來完全不費力。
五、高性能
Java最初發展階段,總是被人詬病「性能低」;客觀上,高級語言運行效率總是低於低級語言的,這個無法避免。Java語言本身發展中通過虛擬機的優化提升了幾十倍運行效率。比如,通過JIT(JUST IN TIME)即時編譯技術提高運行效率。 將一些「熱點」位元組碼編譯成本地機器碼,並將結果緩存起來,在需要的時候重新調用。這樣的話,使Java程序的執行效率大大提高,某些代碼甚至接近C++的效率。
因此,Java低性能的短腿,已經被完全解決了。業界發展上,我們也看到很多C++應用轉到Java開發,很多C++程序員轉型為Java程序員。
六、分布式
Java是為Internet的分布式環境設計的,因為它能夠處理TCP/IP協議。事實上,通過URL訪問一個網路資源和訪問本地文件是一樣簡單的。Java還支持遠程方法調用(RMI,Remote Method Invocation),使程序能夠通過網路調用方法。
七、多線程
多線程的使用可以帶來更好的交互響應和實時行為。 Java多線程的簡單性是Java成為主流伺服器端開發語言的主要原因之一。
八、健壯性
Java是一種健壯的語言,吸收了C/C++ 語言的優點,但去掉了其影響程序健壯性的部分(如:指針、內存的申請與釋放等)。Java程序不可能造成計算機崩潰。即使Java程序也可能有錯誤。如果出現某種出乎意料之事,程序也不會崩潰,而是把該異常拋出,再通過異常處理機制加以處理。
以上幾種特性你了解到啦嗎? 記得給個贊!
『貳』 java的特點有哪些
1、跨平台性,雖然是很好的優勢,可以讓java在任何的系統中運行,但是前提是該系統要安裝java虛擬機,這樣導致一些java編寫的桌面程序無法在一般的用戶(沒有安裝java虛擬機的用戶)上使用。
2、java的身後是sun公司,提供及時的api更新,但是過多的版本導致java的向下兼容性很差。而sun公司在j2ee上的標準定義的並不是完美,導致在j2ee的開發中多數使用開源框架,開源框架是好東西,但是更新速度並不快。
3、都說面向對象的語言先進與面向過程,java是oop語言,但是它適合的是bs系統,在web項目中java的實力毋庸置疑,但是轉到了底層的程序卻無法同c++抗衡。
4、個人認為java的最大優點是開源,但是這往往也成了最大的缺陷了,無法定義一個好的標准使得開發時使用了框架,在新的程序員來到公司時必須先了解框架,延緩了開發的時間。
『叄』 JAVA的技術特點是什麼
JAVA的技術特點是什麼?
Java由美國SUN公司(被oracle公司收購)發明於1995年,是目前業界應用最廣泛、使用人數最多的語言,連續多年排名世界第一,可以稱之為「計算機語言界的英語」。
那麼Java這么高的評價它的特點有哪些,下面我來為題主解答:
一、跨平台/可移植性
這是Java的核心優勢。Java在設計時就很注重移植和跨平台性。比如:Java的int永遠都是32位。不像C++可能是16,32,可能是根據編譯器廠商規定的變化。這樣的話程序的移植就會非常麻煩。
Java首先利用文本編輯器編寫 Java源程序,源文件的後綴名為.java;再利用編譯器(javac)將源程序編譯成位元組碼文件,位元組碼文件的後綴名為.class; 最後利用虛擬機(解釋器,java)解釋執行。如下圖所示:
二、安全性
Java適合於網路/分布式環境,為了達到這個目標,在安全性方面投入了很大的精力,使Java可以很容易構建防病毒,防篡改的系統。比如Java取消了強大但又危險的指針。由於指針可進行移動運算,指針可隨便指向一個內存區域,而不管這個區域是否可用,這樣做是危險的。
三、面向對象
面向對象是一種程序設計技術,非常適合大型軟體的設計和開發。由於C++為了照顧大量C語言使用者而兼容了C,使得自身僅僅成為了帶類的C語言,多少影響了其面向對象的徹底性!Java則是完全的面向對象語言。
四、簡單性
Java就是C++語法的簡化版,我們也可以將Java稱之為「C++-」。跟我念「C加加減」,指的就是將C++的一些內容去掉;比如:頭文件,指針運算,結構,聯合,操作符重載,虛基類等等。同時,由於語法基於C語言,因此學習起來完全不費力。
五、高性能
Java最初發展階段,總是被人詬病「性能低」;客觀上,高級語言運行效率總是低於低級語言的,這個無法避免。Java語言本身發展中通過虛擬機的優化提升了幾十倍運行效率。比如,通過JIT(JUST IN TIME)即時編譯技術提高運行效率。 將一些「熱點」位元組碼編譯成本地機器碼,並將結果緩存起來,在需要的時候重新調用。這樣的話,使Java程序的執行效率大大提高,某些代碼甚至接近C++的效率。
因此,Java低性能的短腿,已經被完全解決了。業界發展上,我們也看到很多C++應用轉到Java開發,很多C++程序員轉型為Java程序員。
六、分布式
Java是為Internet的分布式環境設計的,因為它能夠處理TCP/IP協議。事實上,通過URL訪問一個網路資源和訪問本地文件是一樣簡單的。Java還支持遠程方法調用(RMI,Remote Method Invocation),使程序能夠通過網路調用方法。
七、多線程
多線程的使用可以帶來更好的交互響應和實時行為。 Java多線程的簡單性是Java成為主流伺服器端開發語言的主要原因之一。
八、健壯性
Java是一種健壯的語言,吸收了C/C++ 語言的優點,但去掉了其影響程序健壯性的部分(如:指針、內存的申請與釋放等)。Java程序不可能造成計算機崩潰。即使Java程序也可能有錯誤。如果出現某種出乎意料之事,程序也不會崩潰,而是把該異常拋出,再通過異常處理機制加以處理。
以上幾種特性你了解到啦嗎? 記得給個贊!
當然這些還沒完,Java除啦這些特性還有一些其他的特點我也來給你講一講!!
1.java的風格類似C++,從某種意義上講,java是C++的一個變種。但是java摒棄了C、C++中的容易引發錯誤和難以理解的指針,結構,以及內存管理等;
2.java是一種強類型的語言,比C/C++檢查還要嚴格,java區分大小寫字母;
3.java禁止非法訪問內存,因為java沒有指針,內存的申請和釋放;
4.對於不同的操作系統,會有不同的java虛擬機,這也就決定了java的可移植性;
5.java提供了自動垃圾回收機制gc,有效避免了C、C++的內存泄漏問題;
記得給個贊!
『肆』 Java語言的特點
主要特點:
1. 跨平台性
所謂的跨平台性,是指軟體可以不受計算機硬體和操作系統的約束而在任意計算機環境下正常運行。這是軟體發展的趨勢和編程人員追求的目標。之所以這樣說,是因為計算機硬體的種類繁多,操作系統也各不相同,不同的用戶和公司有自己不同的計算機環境偏好,而軟體為了能在這些不同的環境里正常運行,就需要獨立於這些平台。
而在Java語言中, Java自帶的虛擬機很好地實現了跨平台性。 Java源程序代碼經過編譯後生成二進制的位元組碼是與平台無關的,但是可被Java虛擬機識別的一種機器碼指令。 Java虛擬機提供了一個位元組碼到底層硬體平台及操作系統的屏障,使得Java語言具備跨平台性。
2. 面向對象
面向對象是指以對象為基本粒度,其下包含屬性和方法。對象的說明用屬性表達,而通過使用方法來操作這個對象。面向對象技術使得應用程序的開發變得簡單易用,節省代碼。Java是一種面向對象的語言,也繼承了面向對象的諸多好處,如代碼擴展、代碼復用等。
3. 安全性
安全性可以分為四個層面,即語言級安全性、編譯時安全性、運行時安全性、可執行代碼安全性。語言級安全性指Java的數據結構是完整的對象,這些封裝過的數據類型具有安全性。編譯時要進行Java語言和語義的檢查,保證每個變數對應一個相應的值,編譯後生成Java類。運行時Java類需要類載入器載入,並經由位元組碼校驗器校驗之後才可以運行。 Java類在網路上使用時,對它的許可權進行了設置,保證了被訪問用戶的安全性。
4. 多線程
多線程在操作系統中已得到了最成功的應用。多線程是指允許一個應用程序同時存在兩個或兩個以上的線程,用於支持事務並發和多任務處理。 Java除了內置的多線程技術之外,還定義了一些類、方法等來建立和管理用戶定義的多線程。
5. 簡單易用
Java源代碼的書寫不拘泥於特定的環境,可以用記事本、文本編輯器等編輯軟體來實現,然後將源文件進行編譯,編譯通過後可直接運行,通過調試則可得到想要的結果。
『伍』 Java三大特點是什麼啊
3大特徵:封裝、繼承、多態
封裝:
首先,屬性可用來描述同一類事物的特徵,方法可描述一類事物可做的操作。封裝就是把屬於同一類事物的共性(包括屬性與方法)歸到一個類中,以方便使用。
1.概念:封裝也稱為信息隱藏,是指利用抽象數據類型將數據和基於數據的操作封裝在一起,使其構成一個不可分割的獨立實體,數據被保護在抽象數據類型的內部,盡可能地隱藏內部的細節,只保留一些對外介面使之與外部發生聯系。系統的其他部分只有通過包裹在數據外面的被授權的操作來與這個抽象數據類型交流與交互。也就是說,用戶無需知道對象內部方法的實現細節,但可以根據對象提供的外部介面(對象名和參數)訪問該對象。
2.好處:(1)實現了專業的分工。將能實現某一特定功能的代碼封裝成一個獨立的實體後,各程序員可以在需要的時候調用,從而實現了專業的分工。(2)隱藏信息,實現細節。通過控制訪問許可權可以將可以將不想讓客戶端程序員看到的信息隱藏起來,如某客戶的銀行的密碼需要保密,只能對該客戶開發許可權。
『陸』 java的三個基本特徵是什麼
Java有封裝、繼承、墮胎三大特徵,特點分別如下:
封裝:面向對象編程的核心就是將對象的屬性和方法封裝起來。。。
繼承:允許通過繼承原有類的某些特性或全部特性而產生全新的類,原有的累稱為父類,產生的新類稱為子類。子類不僅可以直接繼承父類的共性,而且也可以創建它特有的個性。
多態:是指在基類中定義的屬性和方法被子類繼承之後,可以具有不同的數據類型或表現出不同行為
『柒』 java的特性
面向對象:其實是現實世界模型的自然延伸。現實世界中任何實體都可以看作是對象。對象之間通過消息相互作用。另外,現實世界中任何實體都可歸屬於某類事物,任何對象都是某一類事物的實例。如果說傳統的過程式編程語言是以過程為中心以演算法為驅動的話,面向對象的編程語言則是以對象為中心以消息為驅動。用公式表示,過程式編程語言為:程序=演算法+數據;面向對象編程語言為:程序=對象+消息。 所有面向對象編程語言都支持三個概念:封裝、多態性和繼承,Java也不例外。現實世界中的對象均有屬性和行為,映射到計算機程序上,屬性則表示對象的數據,行為表示對象的方法(其作用是處理數據或同外界交互)。所謂封裝,就是用一個自主式框架把對象的數據和方法聯在一起形成一個整體。可以說,對象是支持封裝的手段,是封裝的基本單位。Java語言的封裝性較強,因為Java無全程變數,無主函數,在Java中絕大部分成員是對象,只有簡單的數字類型、字元類型和布爾類型除外。而對於這些類型,Java也提供了相應的對象類型以便與其他對象交互操作。
可移植性:就是在這個系統上作的程序經過一次編譯後可以移植到別的系統上解釋執行,只要經過簡單的粘貼和復制就行了,不影響程序的效果
安全性:在 iSeries 伺服器上運行的大多數 Java(TM) 程序是應用程序,而不是 applet,所以「砂箱」安全性模型對它們不起限製作用。從安全性的觀點看,Java 應用程序所受的安全性限制與 iSeries 伺服器上的任何其它程序相同。要在 iSeries 伺服器上運行 Java 程序,您必須對集成文件系統中的類文件具有許可權。程序一旦啟動,它就在該用戶許可權控制下運行。 您可以使用沿用許可權來訪問具有運行程序的用戶的許可權和程序擁有者許可權的對象。沿用許可權臨時地將用戶原先無權訪問的對象的許可權授予用戶。
並發性:JAVA支持多線程技術,就是多個線程並行機制,多線程是Java的一個重要方法,特別有利於在程序中實現並發任務.Java提供Thread線程類,實現了多線程的並發機制.然而,程序的並發執行必定會出現多個線程互斥訪問臨界資源的局面,因而並發系統解決的關鍵就是對臨界資源的管理和分配問題,而在進行臨界資源分配時有兩方面需要考慮,即安全性和公平性.文中首先討論了多線程並發系統中的安全性與公平性問題,指出安全性與公平性在並發系統中訪問臨界資源時的重要性.並通過火車行駛單行隧道的實例,演示各種條件下的行駛情況來進一步說明該問題.
可視化:不好說,像vb這樣的也是可視話的編成程序。
我借鑒了一些朋友的答案,還有一些是自己找啊,希望能給你帶來幫助
........好累,手打書上的,網上的不全
『捌』 Java語言主要特點有哪些
Java的語言特性有以下幾點,如果對編程感興趣可以來我這看看。
一.簡單性:
Java是純面向對象語言,語法簡單明了,易於掌握。
Java使用介面取代了多重繼承,並且取消了指針,因為多重繼承和指針會使程序變得復雜。
Java還會自動地收集內存垃圾,使得內存管理變得更為簡單。
Java還提供了豐富的類庫、API文檔以及第三方開發包,還有大量Java的開源項目。
二.面向對象性:
面向對象性事Java語言的基礎。
java語言提倡「萬物皆對象」,語法中不能在類外面定義單獨的數據和函數。
Java語言最外部的數據類型是對象,所有的元素都要通過類和對象來訪問。
三.分布性:
Java的分布性包括:1.操作分布。2.數據分布
⑴操作分布:即在多個不同的主機上不知相關操作。
⑵數據分布:將數據分別存放在不同的主機上,這些主機是網路中的不同成員。
四.可移植性:
Java程序具有與體系結構無關的特性。
Java的類庫也提供了針對不同平台的介面,所有這些類庫也可以被移植。
五.安全性
Java語言刪除了類C語言的指針和內存釋放等語法,有效地避免了用戶對內存的非法操作
Java程序代碼要經過代碼程序校驗、指針校驗等很多測試步驟才能夠運行。所以未經允許的Java程序不能出現損害系統平台的行為。
Java可以編寫出防病毒和防修改系統。
六.健壯性
Java會檢查程序在編碼和運行時的錯誤,並消除錯誤。
七.多線程性。
Java應用程序可以在同一時間並行執行多項任務。而且相應的同步機制可以保證不同線程能夠正確地共享數據。
八.高性能性
Java編譯後的位元組碼是在解釋器中運行的,所以它的速度較多數互動式運用程序提高了很多。
九.動態性
Java可以動態調整庫中方法和增加變數,並且客戶端不需要任何更改。在Java中進行動態調整是非常簡單和直接。
希望對您有所幫助!~
『玖』 簡述Java的特點
Java是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java 技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
Java語言是易學的。Java語言的語法與C語言和C++語言很接近,使得大多數程序員很容易學習和使用Java。另一方面,Java丟棄了C++中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。特別地,Java語言不使用指針,而是引用。並提供了自動的廢料收集,使得程序員不必為內存管理而擔憂。
Java語言是強制面向對象的。Java語言提供類、介面和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持介面之間的多繼承,並支持類與介面之間的實現機制(關鍵字為implements)。Java語言全面支持動態綁定,而C++語言只對虛函數使用動態綁定。總之,Java語言是一個純的面向對象程序設計語言。
Java語言是分布式的。Java語言支持Internet應用的開發,在基本的Java應用編程介面中有一個網路應用編程介面(java net),它提供了用於網路應用編程的類庫,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(遠程方法激活)機制也是開發分布式應用的重要手段。
Java語言是健壯的。Java的強類型機制、異常處理、垃圾的自動收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明智選擇。Java的安全檢查機制使得Java更具健壯性。
Java語言是安全的。Java通常被用在網路環境中,為此,Java提供了一個安全機制以防惡意代碼的攻擊。除了Java語言具有的許多安全特性以外,Java對通過網路下載的類具有一個安全防範機制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、位元組代碼檢查,並提供安全管理機制(類SecurityManager)讓Java應用設置安全哨兵。
Java語言是體系結構中立的。Java程序(後綴為java的文件)在Java平台上被編譯為體系結構中立的位元組碼格式(後綴為class的文件),然後可以在實現這個Java平台的任何系統中運行。這種途徑適合於異構的網路環境和軟體的分發。
Java語言是可移植的。這種可移植性來源於體系結構中立性,另外,Java還嚴格規定了各個基本數據類型的長度。Java系統本身也具有很強的可移植性,Java編譯器是用Java實現的,Java的運行環境是用ANSI C實現的。[7]
Java語言是解釋型的。如前所述,Java程序在Java平台上被編譯為位元組碼格式,然後可以在實現這個Java平台的任何系統中運行。在運行時,Java平台中的Java解釋器對這些位元組碼進行解釋執行,執行過程中需要的類在聯接階段被載入到運行環境中。
Java是性能略高的。與那些解釋型的高級腳本語言相比,Java的性能還是較優的。
Java語言是原生支持多線程的。在Java語言中,線程是一種特殊的對象,它必須由Thread類或其子(孫)類來創建。通常有兩種方法來創建線程:其一,使用型構為Thread(Runnable)的構造子將一個實現了Runnable介面的對象包裝成一個線程,其二,從Thread類派生出子類並重寫run方法,使用該子類創建的對象即為線程。值得注意的是Thread類已經實現了Runnable介面,因此,任何一個線程均有它的run方法,而run方法中包含了線程所要運行的代碼。線程的活動由一組方法來控制。Java語言支持多個線程的同時執行,並提供多線程之間的同步機制(關鍵字為synchronized)。
Java語言是動態的。Java語言的設計目標之一是適應於動態變化的環境。Java程序需要的類能夠動態地被載入到運行環境,也可以通過網路來載入所需要的類。這也有利於軟體的升級。另外,Java中的類有一個運行時刻的表示,能進行運行時刻的類型檢查。
『拾』 Java的特點有哪些
Java是一種優秀的程序設計語言,它具有令人賞心悅目的語法和易於理解的語義。不僅如此,Java還是一個由一系列計算機軟體和規范形成的技術體系,這個技術體系提供了完整的用於軟體開發和跨平台部署的支持環境,並廣泛應用於嵌入式系統、移動終端、企業伺服器、大型機等各種場合。順便說一下,JavaScript和Java沒有任何關系,最開始JavaScript叫liveScript,當時Java太火了,於是乎 liveScript更名為JavaScript借勢宣傳了一波。
隨便搜搜近幾年的編程類語言排行榜,Java絕對都是當之無愧的老大哥。那麼,Java究竟有什麼特性能獲得 廣大程序員的一致青睞呢? 在此列出java的11個特性:
1.簡單性
Java語法是C++語法的一個「純凈版本」。這里沒有頭文件,指針運算(甚至指針語法),結構,聯合,操作符重載,虛基類等等。不僅如此,Java開發環境遠遠超出大多數其他編程語言的開發環境。
2.面向對象
什麼是面向對象?用木匠打一個比方,一個「面向對象」的木匠始終關注的是所製作的椅子,第二位才是所使用的工具;而一個「非面向對象」木匠首先考慮的是所使用的工具。
在Java的世界裡,一切皆對象。
Java的面向對象特性與C++旗鼓相當,與C++不同的點在於多重繼承。在Java中,取而代之的是更簡單的介面概念。而且與C++想比,Java提供了更豐富非運行時自省功能。
3.分布式(微服務)
Java有豐富的常式庫,用於處理HTTP和FTP之類的TCP/IP協議。Java應用程序能夠通過URL打開和訪問網路上的對象,其便捷程度就好像訪問本地文件一樣。
4.健壯性
Java與C++最大的不同在於Java使用的指針模型可以消除重寫內存和損壞數據的可能性(對於曾經花費幾個小時來檢查由於指針bug而引起內存沖突的人來說,一定很喜歡Java的這一特性)。不僅如此,Java編譯器能夠檢測許多在其他語言中僅在運行時才能夠檢測出來的問題。
5.安全性
Java適用於網路/分式式環境。為了達到這個目標,在安全性方面投入了大量的精力。使用Java可以構建防病毒,防篡改的系統。
從一開始,Java就設計出能夠防範常見的各種攻擊:
(1)運行時堆棧溢出。蠕蟲和病毒常用的攻擊手段。(2)破壞自己進程空間之外的內存。(3)未經授權讀寫文件。
6.體系結構中立
編譯器生成一個體系結構中立的目標文件格式,這是一種編譯過的代碼,只要有Java運行時系統,這些編譯後的代碼就可以在許多處理器上運行。Java編譯器通過生成與特定計算機體系結構無關的位元組碼指令來實現這一特性。精心設計的位元組碼不僅可以很容易的在任何機器上解釋執行,而且還可以動態地翻譯成本地機器代碼。
7.可移植性
與C/C++不同,Java規范中沒有「依賴具體實現的地方」。基本數據類型的大小以及有關運算都做了明確的說明。例如,Java中的int永遠是32位的整數,二在C/C++中,int可能是16位整數,32位整數,也可能是編譯器提供商指定的其他大小。在Java中,數據類型具有固定的大小,這消除了代碼代碼移植時令人頭疼的主要問題。
8.解釋型
Java解釋器可以再任何移植了解解釋器的機器上執行Java位元組碼。由於鏈接是一個增量式且輕量級的過程。所以開發過程也變得更加快捷,更加具有探索性。
9.高能性
盡管對解釋後的位元組碼性能已經比較滿意,但是在某些場合下可能需要更加高效的性能。位元組碼可以(在運行時刻)動態的翻譯成對應運行這個應用的特定CPU的機器碼。
10.多線程
Java在當時很超前,他是第一個支持並發程序設計的主流語言,多線程可以帶來更好的交互影響和實時行為。並發程序設計絕非易事,但是Java在這方面表現出色,可以很好的管理這個工作。
11.動態性
Java與C/C++相比更具有動態性。它能夠適應不斷發展的環境。庫中可以自由的添加新方法和實例變數,而對客戶端沒有任何影響。在Java中找出運行時類型信息十分簡單。