所謂回調:就是A類中調用B類中的某個方法,然后B類中反骨來調用A類中的方法D,D這個方法就叫做回調方法。
最近需要構建一個Java web項目,然后做文本分析和挖掘,于是又體驗了下Maven構建Java Web項目的快感。
今天抽了些時間翻閱資料復習一下Java部分基礎知識,現整理筆記在此以備鞏固。
這份文檔是Google Java編程風格規范的完整定義。當且僅當一個Java源文件符合此文檔中的規則, 我們才認為它符合Google的Java編程風格。 與其它的編程風格指南一樣,這里所討論的不僅僅是編碼格式美不美觀的問題, 同時也討論一些約定及編碼標準。然而,這份文檔主要側重于我們所普遍遵循的規則, 對于那些不是明確強制要求的,我們盡量避免提供意見。
與其它的編程風格指南一樣,這里所討論的不僅僅是編碼格式美不美觀的問題, 同時也討論一些約定及編碼標準。然而,這份文檔主要側重于我們所普遍遵循的規則, 對于那些不是明確強制要求的,我們盡量避免提供意見。
Java在package import后似乎使用起來更Easy,使用包內的類和方法時,前面無需再附著Package name,即Date d,而不是java.util.Date d。而Go在導入”time”后,引用包中方法時依然要附著著包名,比如time.Now()。但實質上兩種語言在import package的機制上是有很大不同的。
上一篇文章,學習了并發編程中的synchronized,這個比較好理解,也是我最初學習多線程編程中的一個簡單的實現的,大學的時候就會了,然后就一直以為多線程環境的同步只能通過這個來實現的,事實上Java還提供了另外一個更加輕量級的實現-volatile,如果說synchronized實現了數據在同一時刻只能有一個線程對數據訪問的話,那么volatile實現的就是同時可以多個線程在訪問數據,但是只要數據發生了變化,便確保其他線程及時“感知”這種變化。
一圖勝千言,下面圖解均來自Program Creek 網站的Java教程,目前它們擁有最多的票選。如果圖解沒有闡明問題,那么你可以借助它的標題來一窺究竟。
Java,20 歲了。從我寫下第一行 Java 代碼,迄今已有十余年了,眼見 Java——這個當年剛剛找到自己成長方向的懵懂少年,成長為如今當之無愧的業界王者。它已擁有世界上最龐大的開發者社區,以及無可匹敵的生態系統。這也 意味著,選用 Java 做任何應用,都有著強有力的業界支撐,而無需擔心自己孤獨前行。
Java(請不要與 JavaScript 搞混)是一種設計為與 Java 虛擬機 (JVM) 一起使用的多用途編程語言。一般將安裝了相關工具可以開發并運行 Java 程序的電腦系統稱為 “Java 運行平臺”。使用這個標簽可以(在StackOverflow上)查找有關 Java 編程語言或者 Java 平臺工具的問題。
在Java5之后,并發線程這塊發生了根本的變化,最重要的莫過于新的啟動、調度、管理線程的一大堆API了。在Java5以后,通過Executor來啟動線程比用Thread的start()更好。在新特征中,可以很容易控制線程的啟動、執行和關閉過程,還可以很容易使用線程池的特性。
當Java程序違反了Java的語義規則 時,Java虛擬機就會將發生的錯誤表示為一個異常。違反語義規則包括2種情況。一種是Java類庫內置的語義檢查。例如數組下標越界,會引發 IndexOutOfBoundsException;訪問null的對象時會引發NullPointerException。另一種情況就是Java允 許程序員擴展這種語義檢查,程序員可以創建自己的異常,并自由選擇在何時用throw關鍵字引發異常。所有的異常都是 java.lang.Thowable的子類。
JDBC(Java DataBase Connection,Java數據庫連接)由一組用Java語言編寫的類和接口組成。JDBC為使用數據庫 及其工具的開發人員提供了一個標準的API,使他們能夠用Java API來編寫數據庫應用程序。通過使用JDBC,開發人員 可以很方便地將SQL語句傳送給幾乎任何一種數據庫。<br>DriverManager類是Java.sql包中用于數據庫驅動程序管理的類,作用于用戶和驅動程序之間。它跟蹤可用的驅動程序,并在數據庫和相應的驅動程序之間建立連接,也處理諸如驅動程序登錄時間限制及登錄和跟蹤消息的顯示等事務。一般的應用程序只使用它的getConnection()方法。這個方法用來建立與數據庫的連接。
Axis2是一套嶄新的WebService引擎,該版本是對Axis1.x重新設計的產物。Axis2不僅支持SOAP1.1和SOAP1.2,還集成了非常流行的REST WebService,同時還支持Spring、JSON等技術。這些都將在后面的系列教程中講解。
RMI目前使用Java遠程消息交 換協議JRMP(Java Remote Messaging Protocol)進行通信。JRMP是專為Java的遠程對象制定的協議。因此,Java RMI具有Java的“Write Once,Run Anywhere”的優點,是分布式應用系統的百分之百純Java解決方案。用Java RMI開發的應用系統可以部署在任何支持JRE(Java Run Environment Java,運行環境)的平臺上。但由于JRMP是專為Java對象制定的,因此,RMI對于用非Java語言開發的應用系統的支持不足。不能與用非Java語言書寫的對象進行通信。
所有單詞第一個字母大寫,其他字母小寫。例:oilLevel,customerName在后面的描述中我們使用Pascal代表第一種表示方式,Camel代表第二種表示方式。第1章概述1.1代碼需要規范代碼之于程序員,就像零件之于機械工,莊稼之于農民,它是軟件的基石,一行行代碼都是程序員的心血經過日日夜夜凝結成的。做為一個程序員,應該像母親呵護孩子一樣呵護自己的代碼,它不僅僅是一行一行的文字,它是一個程序員的尊嚴和價值所在;它是活的,你甚至能感受到它的心跳。編碼規范只是大家達成一致的約定,這樣大家的代碼就可以互相看懂,維護起來更加容易,思想更暢快的交流,經驗更快的得到傳播。代碼規范不是束縛程序員的桎梏,應該知道,不遵守規范的個性的代碼并不代表程序員的性格,并不能張揚個性。
Fibonacci為1200年代的歐洲數學家,在他的著作中曾經提到:若有一只兔子每個月生一只小兔子,一個月后小兔子也開始生產。起初只有一只兔子,一個月后就有兩只兔子,兩個月后有三只兔子,三個月后有五只兔子(小兔子投入生產)……