Time of Update: 2015-07-26
標籤:文檔結構注意事項:匯入文件字元格式設定需轉化成utf—8格式再進行匯出,否則匯出資料中文顯示亂碼。java代碼 1 package test; 2 import java.io.BufferedReader; 3 import java.io.BufferedWriter; 4 import java.io.File; 5 import java.io.FileOutputStream; 6 import java.io.FileReader; 7 import
Time of Update: 2015-07-26
標籤:leetcode java binary tree maximum 題目:Given a binary tree, find the maximum path sum.The path may start and end at any node in the tree.For example:Given the below binary tree, 1 /
Time of Update: 2015-07-26
標籤:boolean equals(Object x);這個方法和運算子“==”是有很大不同,equals實現對象的值在邏輯上是否相等的判斷,即而“==”只是簡單的判斷對象的引用是否相同。equals的等價性要求其具有如下關係:自反性、對稱性、傳遞性、非空性、一致性。package equalsTesting;public class Person {private String name;private int age;public Person(String name,int
Time of Update: 2015-07-26
標籤:在JAVA多線程編程中,將需要並發執行的代碼放在Thread類的run方法裡面,然後建立多個Thread類的對象,調用start()方法,線程啟動執行。當某段代碼需要互斥時,可以用 synchronized 關鍵字修飾,這裡討論 synchronized 關鍵字修飾方法時,是如何互斥的。synchronized 修飾方法時鎖定的是調用該方法的對象。它並不能使調用該方法的多個對象在執行順序上互斥。下面舉個具體的例子說明:Test.java 通過 implements Runnable
Time of Update: 2015-07-26
標籤:七月 26, 2015 9:57:52 下午 org.apache.coyote.AbstractProtocol destroy資訊: Destroying ProtocolHandler ["ajp-nio-8009"]七月 26, 2015 9:57:52 下午 org.apache.coyote.AbstractProtocol destroy嚴重: Failed to destroy end point associated with ProtocolHandler ["ajp-
Time of Update: 2015-07-26
標籤:一、Mybatis介紹MyBatis是一款一流的支援自訂SQL、預存程序和進階映射的持久化架構。MyBatis幾乎消除了所有的JDBC代碼,也基本不需要手工去 設定參數和擷取檢索結果。MyBatis能夠使用簡單的XML格式或者註解進行來配置,能夠映射基本資料元素、Map介面和POJOs(普通java對
Time of Update: 2015-07-26
標籤:public void main(String[] args){ String host = "123.126.113.42"; int port = 80; Socket s = new Socket(host, port); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream(), "UTF8")); BufferedReader br = new
Time of Update: 2015-07-26
標籤:java 動態代理 代理,就是需要代理類和被代理類有相同的對外介面或者說成服務,所以代理類一般都必須實現了所有被代理類已實現的介面,因為介面就是制定了一系列對外服務的標準。 正因為動態代理有這樣靈活的特性,所以我們在設計動態代理類(DynamicProxy)時不用顯式地讓它實現與真實主題類(RealSubject)相同
Time of Update: 2015-07-26
標籤:java設計模式 策略模式 什麼是策略模式?定義演算法族,分別封裝起來,讓它們之間可以相互替換,此模式讓演算法的變化獨立於使用演算法的客戶。策略模式有什麼好處?可以動態改變對象的行為。設計原則1.封裝變化(找出應用中可能需要變化之處,把它們獨立出來,不要和那些不需要變化的代碼混在一起)2.多用組合,少用繼承3.針對介面編程,不針對實現編程把一個類中經常改變或者將來可能改變的部分提取出來,作為一個介面;然後在基類中包含這個對
Time of Update: 2015-07-26
標籤:java設計模式 觀察者模式 什麼是觀察者模式?觀察者模式定義了對象之間的一對多依賴,當一個對象改變狀態,其他依賴者都會收到通知並自動更新。角色抽象主題(Subject)角色主題角色把所有對觀察考對象的引用儲存在一個聚集裡,每個主題都可以有任何數量的觀察者。抽象主題提供一個介面,可以增加和刪除觀察者對象,主題角色又叫做抽象被觀察者(Observable)角色,一般用一個抽象類別或者一個介面實現。抽象觀察者(Observer
Time of Update: 2015-07-26
標籤:多線程 並發 exchanger package org.rui.thread.newc;import java.util.List;import java.util.concurrent.CopyOnWriteArrayList;import java.util.concurrent.Exchanger;import
Time of Update: 2015-07-26
標籤:java cpu 死迴圈 jstack 線程id 當有java進程佔用過多CPU時,可能是邏輯出現的問題。如何排查問題所在呢?1. 使用top工具列出所有進程,shitf + p 列出CPU佔用率較高進程2. 找到問題進程號,使用top -H -p pid列出進程的所有線程3. 然後shift + p
Time of Update: 2015-07-26
標籤:對話方塊 java 總結起來很簡單: 1,對話方塊類型:訊息,確認,選項,輸入 2,選擇表徵圖:錯誤,資訊,警告,問題,無或者自訂 3,選擇訊息:字串,表徵圖,自訂群組件或者他們的集合 4,對於確認對話方塊,選擇選項類型(預設,Yes/No,Yes/No/Cancel或者OK/Cancel) 5,對於選項對話方塊,選擇選項(字串,圖表或者自訂群組件)和預設選項 6.對於輸入框,選擇文字框或者輸入框。
Time of Update: 2015-07-26
標籤:裝飾者模式在Java程式設計語言中,嵌套了很多設計模式的思想,例如IO流中的緩衝流就使用到下面要介紹的裝飾者設計模式。範例程式碼: * 抽象構件角色:定義一個抽象介面,來規範準備附加功能的類 * @author Admin * */public interface Drink { //被裝飾者的基類public String description();public int price();}/** * 具體構件角色:將要被附加功能的類,實現抽象構件角色介面 * @
Time of Update: 2015-07-26
標籤: 在Java類中聲明屬性、方法和內部類時,可使用關鍵字static作為修飾符,static標記的屬性和方法可以由整個類進行共用,因此static修飾的屬性稱為類成員或者稱為類方法;static修飾的方法稱為類方法或者靜態方法; static修飾的語句塊在其所屬的類中被載入JVM時被執行一次,一般用於一次性的初始化的工作;而非static語句塊是每建立一個對象就執行一次,其運行時機實在對象分配空間及執行個體預設和顯示初始化之後和執行構造方法體中語句之前;/***static 操作使用*@
Time of Update: 2015-07-26
標籤: 可以直接使用:Map<String, Object> testMap = new HashMap<String, Object>() {{ put("test1", "test11"); put("test2", "test11");}}; 進行初始化。在網上查了下,這個是使用了匿名類的方式來進行初始化。第一層{}是匿名類的定義,第二層{}是初始化函數的定義。但是沒有想通的是
Time of Update: 2015-07-26
標籤:1.變數的比較 1 public static void main(String[] args) { 2 String s1 ="hello"; 3 String s2 ="hello"; 4 5 String s3 = new String("hello"); 6 String s4 = new String("hello"); 7 8
Time of Update: 2015-07-26
標籤:/***Final關鍵字的使用*@author lihaiming*Email:[email protected]*關鍵字Final可以修飾屬性,方法,類*修飾屬性的時候,final修飾的變數是一個常量*修飾方法時,方法不被子類重寫*修飾類時,類不被繼承*/public class TestFinal{//final修飾變數時,變數就成常量,不能再次對它賦值;private final int I=100;//static是一個全域變數private static int J=5
Time of Update: 2015-07-26
標籤:隊列是一種線性表,它只允許在該表中的一端插入,在另一端刪除。允許插入的一端叫做隊尾(rear),允許刪除的一端叫做隊頭(front);下面用Java的數組進行類比隊列的操作:/**2015-07-26 18:49:08 *用數組元素來示範隊列的內部操作 *@author lihaiming *Email:[email protected] */import java.util.Scanner;public class Queue {//屬性變數private int[]
Time of Update: 2015-07-26
標籤:一、抽象類別1、什麼是抽象類別對於類的某個方法可以描述這個的某個特性。比如動物的跑等,但是不同的對象可能方法是不一樣的。這就需要對方法進行抽象。這樣就可以根據不同的類的特點,進行繼承,然後再對抽象的方法進行重寫。abstract class **{abstract void