java編譯小程序很慢
A. java有什麼優點和缺點
Java是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
Java是功能完善的通用程序設計語言,可以用來開發可靠的、要求嚴格的應用程序。
java是純面向對象開發,功能強大,分支眾多,沒有java不能做的軟體。C/S也好B/S也好。從功能上講,沒有語言可以和java相比。
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的前景應該是穩定而光明的。
B. JAVA這門語言編程時有哪些限制或局限
Java語言局限性及其解決對策
2.1 執行速度慢
事實上,Java比C語言寫的程序執行起來慢很多。執行慢的原因主要是在主機操作系統上加了虛擬機層,比本地編譯碼慢。
解決的方法主要有:
(1)「及時(Just in Time, JIT)編譯器」
(2)研究新的編譯理論和技術
(3)使用JavaStation及JavaOS
(4)採用Java晶元
將Java做成晶元,用來解釋Java語句,把Java語句作為一條指令來執行,加快Java語言編寫程序的執行。Java晶元可直接執行Java位元組碼。
2.2 Java標准問題
目前還沒有Java系列國際標准。有關Java的核心技術:Java虛擬機、Java語法、Java類庫和Java應用程序介面(API)等。這些都變成國際標准還需要一段時間。
Java在實現跨平台性和可移植性的同時,自己也漸漸走上了Unix發展的老路。這樣發展下去是很危險的。
解決的方法主要有:
(1)盡快制定出Java國際標准;
(2)Sun公司提出了100%純Java倡議,這是純化Java的良好開端。
2.3 安全性問題
Java已實現了幾種安全性機制。但還存在的問題:對applets有許多限制。
Java現有的安全模型並不完善,有些開發人員能生成嵌入Web的Java小程序,即不友好的小程序。這種程序可能給Web用戶帶來麻煩。
安全性問題需要進一步的研究,包括提出新的Java安全模型。
2.4 已有軟體產品的充分利用
如果程序必須與遺留下來的老代碼和數據打交道,則傳統的工具或語言能工作得更好。
Java語言提供了本地方法調用,可調用其它語言編寫的程序。但這樣系統就不能保證運行在其它Java平台上。要能運行在任何Java平台上,就要求100%的純Java。
Sun公司提出了100%純Java倡議,要求滿足下列所有條件:100%用Java編程,沒有本地方法調用,遵守Java核心API規范,通過100%純Java測試。
解決的方法主要有:
(1)將C, C++等語言直接編譯成Java的位元組碼。美國已將Ada語言編譯成了Java位元組碼。
(2) IBM正在研製的通用虛擬機(UVM),它允許開發人員使用Java,Basic和Smalltalk等語言,建立各種與平台無關的軟體。UVM的設計目標是翻譯Smalltalk、Basic和Java編碼。
2.5 Java語言的基本類庫簡單
與微軟(Microsoft)的基本類庫相比,Java語言的基本類庫簡單。
解決的方法主要有: Java語言基本類庫的擴充。
2.6 跨平台問題
跨平台是Java語言最大的優點。但保證跨平台兼容性的條件下,Java不能全部使用本機操作系統具有的各種功能。
由於一種操作系統特有的功能和特徵並不能准確的轉移到另一種操作系統上,因此Java的跨平台適配性也許是不可能實現的。
從理論上講,可以創建一個能在任何處理器和操作系統上運行的Java虛擬機,但不同的處理器和操作系統支持的功能不同,所有這些差異要靠Java虛擬機來解決。
跨平台計算的實現較之於單平台來說成本高,難度大,而且為此必須開發能夠運行於多種硬體平台和軟體平台的應用程序。
2.7 軟體開發費用問題
軟體開發商對另外的語言也許有更好的工具,使用熟悉的工具或語言有更高的生產率。
如果要另外花錢和增加客戶負擔,軟體開發商也許不願意改變。
2.8 廣泛的應用實例
用一種語言滿足所有用戶的需求,是很難地,也不大可能。Java語言還很年輕,不夠穩定和成熟。
這還要經過實際應用的檢驗。
3 結束語
本文分析了Java語言存在的問題,目前解決這些問題的研究方法。這些為Java語言的進一步研究提供了參考,為廣大用戶選擇Java語言作為開發工具提出了可能遇到的問題。
總之,隨著計算機網路的廣泛普及,越來越多的用戶進入Internet,Java計算模式會是一種非常重要的計算模式,Java語言的研究和應用,也會變得更加深入和廣泛。