Time of Update: 2018-07-25
首先,阿里的面試官都很nice,每次結束電話都會說謝謝,問到你不會的問題,也會讓你別急,會給你提示,面試體驗很好。 第一次,上午十點電話去洗手間了,沒接到,有點方。 下午3點,阿里電話一面,應該是個技術小哥,跟我聊了很多亂七八糟的,中間我可能有點緊張,說話語速有點快,小哥讓我不要急,說我的知識面已經很廣,不要怕。之後我就很冷靜nice的跟小哥聊天了。
Time of Update: 2018-07-25
第一章:java多線程技能 在學習線程之前我們首先要清楚一下 進程的概念: 進程是作業系統結構的基礎,是系統進行資源分派的和調度的獨立單位。windows上一個啟動並執行word,一個瀏覽器程式就稱之為一個進程。
Time of Update: 2018-07-25
1.Prim演算法核心思想 prim演算法也是貪婪演算法的一個典型例子,有點類似於dijkstra演算法。核心思想:將點分為兩撥,已經加入最小產生樹的,未加入的,找到未加入中距離集合最近的點,添加該點,修改其它點到集合的距離,直到所有結點都加入到最小產生樹。 2.java原始碼 import java.util.*;public class Prim {static int MAX =
Time of Update: 2018-07-25
第二章 對象及變數的並發訪問 本節主要總結了一些synchronized的使用方法: 在java中:“非安全執行緒”的問題存在於“執行個體變數”中,如果是方法內部的私人變數,則不存在“非安全執行緒“的問題。 synchronized加在方法的前部:
Time of Update: 2018-07-25
隨著CPU 多核時代的到來,多線程編程在充分利用計算資源、提高軟體服務品質方面扮演了越來越重要的角色。而解決多線程編程中頻繁出現的普遍問題可以借鑒設計模式所提供的現成解決方案。
Time of Update: 2018-07-25
很早就知道爬蟲的原理,但是一直沒有去實現過,今天寫起來還真遇到很多困難,尤其是多線程同步的問題。還是自己對多線程不熟,沒有大量實踐過的原因。 先上我做的結果吧: 開始爬蟲.........................................當前有1個線程在等待當前有2個線程在等待當前有3個線程在等待當前有4個線程在等待當前有5個線程在等待....................
Time of Update: 2018-07-25
本文由黃文海首次發布在infoq中文站上:http://www.infoq.com/cn/articles/Java-multithreaded-programming-mode-active-object-part1 。轉載請註明作者: 黃文海 出處:http://viscent.iteye.com。 Active Object模式簡介 Active
Time of Update: 2018-07-25
方法 第38條:檢查參數的有效性 在方法體的開頭處檢查參數,對於公有的方法,要用Javadoc的@throws標籤在文檔中說明違反參數值限制時會拋出的異常 /** * @throws ArithmeticException if m is less than or equal to 0 /public BigInteger mod(BigInteger m){ if(m.signum() <= 0){ throw new
Time of Update: 2018-07-25
package zhangtingting; public class StackTest { private Object[] stack; //元素個數; private int size; //預設長度為10; public StackTest(){ this(10); } //也可以自己設定長度,即容量;
Time of Update: 2018-07-25
異常 第57條:只針對異常的情況才使用異常 異常應該只用於異常的情況下:它們永遠不應該用於正常的控制流程 設計良好的API不應該強迫它的用戶端為了正常的控制流程而使用異常 第58條:對可恢複的情況使用受檢異常,對編程錯誤使用運行時異常 Java程式設計語言提供了三種可拋出結構:受檢的異常、運行時異常和錯誤
Time of Update: 2018-07-25
在Java中有以下三種方法可以終止正在啟動並執行線程: 使用退出標誌,使線程正常退出,也就是當run方法完成後線程終止 使用stop方法強行終止線程,但不推薦使用這種方法,因為stop和suspend及resume一樣,都是作廢到期的方法,使用它們可能產生不可預料的結果 使用interrupt方法中斷線程,不過interrupt方法不會終止一個正常啟動並執行線程,只會給它設定一個中斷標記,需要對其進行判斷來停止線程運行 判斷線程是否是停止狀態有兩個方法:
Time of Update: 2018-07-25
/* (程式頭部注釋開始)* 程式的著作權和版本聲明部分* Copyright (c) 2011, 煙台大學電腦學院學生 * All rights reserved.* 檔案名稱: * 作 者: 臧鵬 * 完成日期: 2012 年 9月 15日* 版 本 號: 001 * 對任務及求解方法的描述部分* 輸入描述: * 問題描述:輸入一個數,判斷是不是迴文數* 程式輸出: *
Time of Update: 2018-07-25
/* (程式頭部注釋開始)* 程式的著作權和版本聲明部分* Copyright (c) 2011, 煙台大學電腦學院學生 * All rights reserved.* 檔案名稱: * 作 者: 臧鵬 * 完成日期: 2012 年 9月 26日* 版 本 號: 001 * 對任務及求解方法的描述部分* 輸入描述: * 問題描述:一個求兩矩陣相乘的程式* 程式輸出: *
Time of Update: 2018-07-25
/* (程式頭部注釋開始)* 程式的著作權和版本聲明部分* Copyright (c) 2011, 煙台大學電腦學院學生 * All rights reserved.* 檔案名稱: * 作 者: 臧鵬 * 完成日期: 2012 年 9月 19日* 版 本 號: 001 * 對任務及求解方法的描述部分* 輸入描述: *
Time of Update: 2018-07-25
定時器 Timer的使用 在JDK庫中Timer類主要負責計劃任務的功能,也就是在指定的時間開始執行某一個任務。 Timer類的主要作用就是設定計劃任務,但封裝任務的類確實TimerTask類。執行計畫任務的代碼要放到TimerTask的子類中,因為TimerTask是一個抽象類別。 方法schedule(TimerTask task,Date time) 該方法的作用是在指定的日期執行一次某一任務。 方法schedule(TimerTask,Date
Time of Update: 2018-07-25
第1章 Java程式設計概述 1.關於Java Java Java是一個完整的平台,有一個龐大的庫,其中包含很多可重用的代碼和一個提供諸如安全性,跨作業系統的可移植性以及自動記憶體回收等服務的執行環境。 .Net平台也依賴於虛擬機器 依賴具體實現 與C和C++不同,Java規範中沒有“依賴具體實現”的地方。基礎資料型別 (Elementary Data Type)的大小以及有關演算法都做了明確的說明。如,Java中的int永遠為32位。 applet
Time of Update: 2018-07-25
13.1 集合介面 13.1.1 將集合的介面與實現分離 與現代的資料結構類庫的常見情況一樣,Java集合類庫也將介面(interface)與實現(impementation)分離。首先,看一下人們熟悉的資料結構——隊列(queue)是如何分離的。 隊列介面指出可以在隊列的尾部添加元素。在隊列的頭部刪除元素,並且可以尋找隊列中元素的個數。當需要收集對象,並按照“先進先出”的規則檢查對象時就應該使用隊列。 隊列通常有兩種實現形式:一種是使用迴圈數組,另一種是使用鏈表。 13.1
Time of Update: 2018-07-25
java打jar包的異常一:could not find the main class,java.lang.UnsupportedClassVersionError: Bad version numb。 原因:jdk版本衝突問題 參考文章: http://jn3.141592654.blog.163.com/blog/static/27477260201031285943166/?hasChannelAdminPriv=true
Time of Update: 2018-07-25
背景:項目中需要使用到MATLAB中的自訂函數,即.m檔案。但是在按照協助的步驟進行產生COM的操作時,總是提示“java exception occured”異常。MATLAB版本為7.1 sp3。 原因: 當該版本的MATLAB的安裝目錄中有空格時,就會發生此異常。如:安裝目錄為D:/Program Files/MATLAB71時,就會產生該異常。 解決方案:一、重新安裝MATLAB,使其路徑中不包含空格二、升級到較新的版本,MATLAB
Time of Update: 2018-07-25
tomcat7早就出來正式版,但是一直都沒有用過,尤其是針對於我還一直在用Myeclipse6.5的人來說,它在配置tomcat的時候沒有tomcat7的選項,所以就報了錯誤資訊 java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactoryat org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:60