Jython功能——與Java語言相比的獨特功能
本文介紹一些Jython功能。
Jython語法是面向行的(line-oriented),并且類似于英語,同時完全支持結構化和面向對象類型的語言,如Java和C++。Jython代碼可以直接解釋,也可以翻譯成自動編譯為類文件的Java源文件(請參閱參考資料)。編譯的Jython類可以獨立于Jython解釋器執行,也可以在Java代碼中使用,就像它們是Java類一樣(例如,開發applet或者servlet)。
如前所述,Jython的生產率是它最出色的優點。下面是Jython的一些獨特功能(與Java語言相比):
可以用交互模式一行一行地輸入代碼并運行,這可以改進學習并促進試驗性使用。
變量是在賦值時動態鍵入的,因此不需要預先聲明變量或者使用new運算符。這些增強的功能可以顯著提高編程的靈活性,還會降低程序的正文篇幅大小,因而提高了生產率。
可以廣泛地、方便地使用字符串運算(例如,在Jython中x==y與Java語言中的x.equals(y)是一樣的)。
Adapter對象是自動生成的并自動提供默認的Java接口實現,使得更容易實現事件處理程序回調。
自然的精度不定整數值(Natural indefinite precision integer value)(即對java.math.BigInteger之類類型的繁瑣訪問)和自然復雜值(natural complex values)使得Jython容易地支持許多比Java語言所能支持的更為精確的應用程序。
動態特性(每個作用類似Java Map的類實例)使得類功能可以更為動態。
增強的導入(像Java 1.5的import static)提高了靈活性和模塊性。
Classless 和mainless(即開放)代碼提高了程序式程序(如腳本)的生產率。
每個源文件中有多個公共變量、函數和/或類,降低了必須維護的源文件數量,這簡化了大規模開發。
函數和方法的默認參數極大地減少了需要創建的重載方法數量。
函數和方法的Keyword參數提高了代碼的自解釋性和靈活性。
函數型程序設計(函數是第一級對象)提供了非常強大和靈活的編程樣式,這是Java語言缺少的。
如果需要,多重繼承支持更豐富的繼承層次結構。
運算符重載允許創建與語言無縫集成的新數據類型。
這些就是Jython區別于Java語言的功能了。
【編輯推薦】