Time of Update: 2015-07-22
標籤:Java作為一門優秀的物件導向的程式設計語言,正在被越來越多的人使用。在實際開發中碰到的一些Java語言的容易被人忽視的細節,下面分享一下希望能給正在學習Java語言的人有所協助。1,位移運算越界怎麼處理 考察下面的代碼輸出結果是多少? int a=5; System.out.println(a<<33);按照常理推測,把a左移33
Time of Update: 2015-07-22
標籤:一、引子 這是一個很簡單的模式,卻被非常廣泛的使用。之所以簡單是因為在這個模式中僅僅使用到了繼承關係。 繼承關係由於自身的缺陷,被專家們扣上了“罪惡”的帽子。“使用委派關係代替繼承關係”,“盡量使用介面實現而不是抽象類別繼承”等等專家警告,讓我們這些菜鳥對繼承“另眼相看”。 其實,繼承還是有很多自身的優點所在。只是被大家濫用的似乎缺點更加明顯了。合理的利用繼承關係,還是能對你的
Time of Update: 2015-07-22
標籤:java jaxb javabean xml 轉換 1.Jaxb - Java Arcitecture for XML Binding是業界的一個標準,是一項可以根據XML Schema產生Java類的技術。Jaxb2.0是Jdk1.6的組成部分。不需要在第三方Jar包的支援下即可完成Xml與JavaBean的相互轉換。2
Time of Update: 2015-07-22
標籤:java概述在java中,一個類可以包含的元素有變數,方法,代碼塊,這其中變數可以分為普通變數和靜態變數,代碼塊也有靜態代碼塊和普通代碼塊。在建立一個對象的時候,這個對象是怎麼初始化的呢,這裡我們就開始來講解一下,因為方法只有在調用的時候才會用到,因此這裡不將方法的初始化,而主要講的是變數,代碼塊以及建構函式的初始化順序單個類的初始化當一個類中包含靜態變數,靜態代碼塊,普通變數,普通代碼塊,以及建構函式時;(注意這裡單個類是區別於有繼承關係的類來說的,之後會講到當有繼承關係的時候類的初始化
Time of Update: 2015-07-22
標籤:一、Mybatis介紹MyBatis是一款一流的支援自訂SQL、預存程序和進階映射的持久化架構。MyBatis幾乎消除了所有的JDBC代碼,也基本不需要手工去設定參數和擷取檢索結果。MyBatis能夠使用簡單的XML格式或者註解進行來配置,能夠映射基本資料元素、Map介面和POJOs(普通java對象)到資料庫中的記錄。二、MyBatis工作流程(1)載入配置並初始化 觸發條件:載入設定檔 配置來源於兩個地方,一處是設定檔,一處是Java代碼的註解,將SQL的配置資訊載入成為一個個Ma
Time of Update: 2015-07-22
標籤:java虛擬機器 jit 即時編譯器 HotSpot虛擬機器內的即時編譯器最近在看周志明老師的《深入理解Java虛擬機器》這本書,看了之後感覺收穫挺多的,於是就寫點讀書總結吧。先看如下問題: 1、 為何HotSpot虛擬機器要使用解譯器與編譯器並存的架構? 2、 為何HotSpot虛擬機器要實現兩個不同的即時編譯器? 3、 程式何時使用解譯器執行?何時使用編譯器執行?
Time of Update: 2015-07-22
標籤:在java早期的版本中,提供了一個終止線程的方法:stop()。但在隨後的版本中,這個方法被遺棄了,因為它的中斷是”立即“,這樣有可能會造成資料不一致的情況。比如說在轉賬的過程中。因此在jdk1.5的時候,有一個方法出來解決這個問題:intertupt()。這個方法會在run()中止,【Interrupting a thread that is not alive need not have any
Time of Update: 2015-07-22
標籤: 結構圖 Collection(介面) | --------------------------------------------------------
Time of Update: 2015-07-22
標籤:有時候Java的Eclipse工程換一台電腦後編譯總是@override報錯,把@override去掉就好了,但不能從根本上解決問題,因為有時候有@override的地方超級多。這是jdk的問題,@Override是JDK5就已經有了,但是不支援對介面的實現,認為這不是Override而報錯。JDK6修正了這個Bug,無論是對父類的方法覆蓋還是對介面的實現都可以加上@Override。要解決該問題,首先要確保機器上安裝了jdk
Time of Update: 2015-07-22
標籤:【編者按】在編程時,開發人員經常會遭遇各式各樣莫名錯誤。近日,Sushil Das在 Geek On Java上列舉了 Java 開發中常見的 5 個錯誤,與君共「免」。以下為譯文:1. Null 的過度使用避免過度使用 null 值是一個最佳實務。例如,更好的做法是讓方法返回空的 array 或者 collection 而不是 null 值,因為這樣可以防止程式拋出 NullPointerException。下面程式碼片段會從另一個方法獲得一個集合:</>
Time of Update: 2015-07-22
標籤:原文地址:http://www.infoq.com/articles/Java-8-Quiet-FeaturesIf you haven’t seen some of the videos or tutorials around Java 8, you’ve probably been super-busy or have a more interesting social life than I do (which isn’t saying much)
Time of Update: 2015-07-22
標籤:註解(Annotation)是從jdk1.5開始增加的特性。學習註解能夠讀懂架構的代碼;讓編程更加簡潔,代碼更加清晰。註解概念:java提供了一種原程式中的元素關聯任何資訊和任何中繼資料的途徑和方法。註解需要import
Time of Update: 2015-07-22
標籤:普通thread 這是最常見的,建立一個thread,然後讓它在while迴圈裡一直運行著,通過sleep方法來達到定時任務的效果。這樣可以快速簡單的實現,代碼如下:
Time of Update: 2015-07-22
標籤:android timer類 timertask類 用法很簡單,new一個timer,然後寫一個timertask的子類即可。代碼如下:[java] view
Time of Update: 2015-07-22
標籤:java 源碼 深度 歡迎轉載,請附上出處: http://blog.csdn.net/as02446418/article/details/47004573我們首先來看一下ConcurrentHashMap類的聲明: public class ConcurrentHashMap<K, V> extends AbstractMap<K, V>
Time of Update: 2015-07-22
標籤:android 異常 布局 java.lang.IllegalStateException:The specified child already has a parent. You must call removeView() on the child‘s parent
Time of Update: 2015-07-22
標籤:排序 java 演算法 選擇排序步驟:1.找到數組中參與遍曆比較的所有元素中的最小元素的下標;2.將最小元素與數組中參與遍曆比較的第一個元素進行交換(如果第一個元素就是最小元素的話,那麼也會進行一次交換);3.若數組中還有需要參與遍曆比較的元素,則跳轉到步驟1;否則排序結束。在演算法第四版中給出的所有排序均是適用於任意實現了Comparable介面的資料類型,若要將數字作為測試案例,請勿使
Time of Update: 2015-07-22
標籤:java executor Executor架構為了更方便使用,提供了Executors這個工廠類,通過一系列的靜態Factory
Time of Update: 2015-07-22
標籤:rmi java 網路編程 Java RMI 指的是遠程方法調用 (Remote Method Invocation)。它是一種機制,能夠讓在某個 JAVA 虛擬機器上的對象調用另一個 JAVA 虛擬機器中的對象上的方法。可以用此方法調用的任何對象必須實現該遠程介面。Java
Time of Update: 2015-07-22
標籤:java tcpip nio 之前做的一個項目,先開始用的是BIO(即阻塞式IO),然後因為一些效能問題,然後用NIO(即非阻塞式IO)替換了BIO。我們先說說BIO有什麼缺點為什麼要使用NIO:以java中TCP為例來講解:我們知道,在用戶端java調用connect方法會阻塞,調用read的時候也會阻塞也就是讀不到就一直阻塞在那裡,而伺服器端呢,調用accept()方法會阻塞,調用re