原创 java泛型中
(1)<? super String> is any class which is a superclass of String (including String itself). (In this case, the only ot
原创 封裝、繼承、多態
一、封裝 封裝性就是把類的屬性和行爲結合成一個獨立的相同單位, 並儘可能隱蔽類的內部細節,對外形成一個邊界,只保留有限的對外接口,使之與外部發生聯繫。 封裝的特性使得類以外的部分不能隨意存取類的內部屬性,保證了
原创 多線程三
一、鎖對象( ReentrantLock ) import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; publi
原创 多線程七
利用Callable&Future創建線程 問題: 之前遇到的的執行任務都是run方法實現的任務,而run方法是沒有返回值的,我們並不知道線程什麼時候執行結束。 解決途徑 : 如果線程執行結束之後
原创 多線程四
利用yeild方法來實現 : 生產者-消費者模型(主動放棄cpu但又去但與競爭)cpu表示壓力很大 生產者類 class FlagSend implements Runnable{ int theValue; bo
原创 多線程一
一、創建線程方式 1、繼承Thread類創建線程 a. 定義Thread類的子類,並重寫該類的run方法 b. 創建Thread子類的實例 c. 調用start方法來啓動線程
原创 多線程六
線程池 問題:在實際應用中不希望無休止的創建線程 解決途徑:不管有多少個任務都交給固定的線程數的線程來執行任務 可以讓一個線程執行多個任務 創建線程池: Executors
原创 多線程五
(wait / notify)方法實現生產者-消費者模型 任何一個對象都擁有一個線程等待池 掛在同一個對象的線程池中的線程之間可以互相喚醒 所以wait / notify 方法是屬於Object類的
原创 OCJP詳解
QUESTION 1 Given a pre-generics implementation of a method: 給定下列還未使用泛型的代碼: 11. public static int sum(List list) {
原创 筆記
1.兩個以上的線程可以同時死鎖 如果一個線程片段會死鎖,那麼你就不能通過Thread.yield方法調用取消死鎖 2.調用wait()方法是,如果當前線程不是次對象監視器的所有者,就會報IllegeMonitorState
原创 購物車(cookie和session各自的優缺點)
1. cookie cookie是由服務器產生,存儲在客戶端的一段信息。它定義了一種Web服務器在客戶端存儲和返回信息的機制,cookie文件它包含域、路徑、生存期、和由服務器設置的變量值等內容。當用戶以後訪問同一個Web服務器時,瀏
原创 Log4j.properties 屬性詳解
我們可以在log4j.properies配置文件看到以下屬性:#定義輸出級別和輸出平臺log4j.rootLogger=INFO,stdout,fileout#設定stdout輸出平臺log4j.appender.stdout=org.a
原创 log4j:WARN No appenders could be found for logger
直接寫我的解決辦法: 在src下面新建file名爲log4j.properties內容如下: # Configure logging for testing: optionally with log file log4j.rootLog
原创 hashcode和equals
首先,想要明白hashCode的作用,必須要先知道Java中的集合。 總的來說,Java中的集合(Collection)有兩類,一類是List,再有一類是Set。 前者集合內的元素是有序的,元素可以重複;後者元素無序,但元素不可重複
原创 java泛型中<? super String>和<? extends String> 的區別
(1)<? super String> is any class which is a superclass of String (including String itself). (In this case, the only ot