Time of Update: 2018-12-04
import java.io.*;import java.util.*;public class MaxLength { //找出長度最長的單詞 static void max(int a[],String mystr[]){ String[] sigstr; int max=a[0]; for(int i=0;i<a.length;i++){
Time of Update: 2018-12-04
1. 有關從控制台如何讀取一個資料或數組並輸出輸入一個數並輸出的2中方法1)BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); //read onenumber Stringstr=br.readLine(); int i=Integer.parseInt(str); System.out.print(i); 2)byte[] b=
Time of Update: 2018-12-04
通俗理解向上轉型:就是子類轉型成父類。class A{}class B extends A{}A b = new B();這個就是向上轉型。 向上轉型可以像下面這條語句這麼簡單:Shape s =new Circle(); 這裡,建立一個Circle對象,並把得到的引用立即賦值給S矇,這樣做看似錯誤(將一種類型賦值給別一種類型);但實際上沒有問題,因為通過繼承,Circle就是一種Shape。因此,編譯器認可這條語句,也就不會產生錯誤資訊。
Time of Update: 2018-12-04
用關鍵字new產生對象:這是最常用的一種方式,例如 new String("hello")用new產生對象的特點是,這個對象的類必須在編譯時間就在classpath中,如果沒有特別的理由和要求,這是我們產生一個對象的第一選擇;Class.forName(String className)。例如Class c =
Time of Update: 2018-12-04
public class DeadLock {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubfinal Object resource1 = "resource1";final Object resource2 = "resource2";Thread t1 = new Thread(){public void
Time of Update: 2018-12-04
異常:java.lang.IllegalStateException: getOutputStream() has already been called for this response 解決:在使用完輸出資料流以後調用以下兩行代碼即可: out.clear(); out = pageContext.pushBody(); 即:ImageIO.write(image, "JPEG", response.getOutputStream());out.clear();out =
Time of Update: 2018-12-04
這兩天看了關於JVM記憶體相關的一些資料,為了方便以後查閱,在此留下一篇博文,順便加深理解。另外,可參考:http://web.cutt.com/article/1740661967 根據《分布式JAVA應用、基礎與實踐》一書中的說明,JVM規範將記憶體空間劃分為方法區、堆、本地方法棧、PC寄存器及JVM方法棧。如所示:
Time of Update: 2018-12-04
java產生隨機整數的不同方法總結,具體看下面代碼: import java.security.SecureRandom;import java.util.Random;/** * aiguoxin 2010-10-20下午01:35:13 * * 隨機數產生總結 */public class Radom {public static void main(String[] args) {// Math.random()方法for (int i = 0; i < 10; i++)
Time of Update: 2018-12-04
wait()、notify()和notifyAll()是Object類的三個本地方法,且都是final,不能被重寫,也就是所有的對象均含有這三個方法。大體上來說,wait()方法是使調用該方法的線程釋放對此對象的鎖,並使得當前的線程阻塞。notify()方法則是隨機播放一個因調用了wait()方法而阻塞的線程解除阻塞。notifyAll()方法則是喚醒所有因調用了wait()方法而阻塞的線程,但是只有一個線程能夠獲得線程鎖。
Time of Update: 2018-12-04
介紹JSONP之前,先簡單的介紹一些JSON。JSON是JavaScript Object Notation的縮寫,是一種輕量的、可讀的基於文本的資料交換開放標準。源於JavsScript程式設計語言中對簡單資料結構和關聯陣列的展示功能。它是僅含有資料對和簡單括弧結構的純文字,因此可通過許多途徑進行JSON訊息的傳遞。 1. JSONP定義 JSONP是英文JSON with Padding的縮寫,是一個非官方的協議。它允許在伺服器端產生script
Time of Update: 2018-12-04
在單台web伺服器情況下,我們處理並發的時候,可以用到關鍵字sychronized或相關並發類庫即可方便處理。 一旦遇到多台web伺服器情況下,也就是分布式並發下,採用上述處理方式是不行的,因為存在多個jvm,以上方法就失效了。 下面讓我們考慮一個這樣一個情境:業務背景:舉辦一場講座,採取網上搶票分號碼的行,號碼不能重複,及講座id與號碼形成一個唯一鍵,如course表:id,seatNum,其他欄位等等環境:多台web伺服器提供服務
Time of Update: 2018-12-04
簡單來說,Java的序列化機制是通過在運行時判斷類的serialVersionUID來驗證版本一致性的。在進行還原序列化時,JVM會把傳來的位元組流中的serialVersionUID與本地相應實體(類)的serialVersionUID進行比較,如果相同就認為是一致的,可以進行還原序列化,否則就會出現序列化版本不一致的異常。
Time of Update: 2018-12-04
1.設定java環境2.編譯下面的類3.運行.class 檔案 在dos 中運行4.在其它區域網路想上網的電腦IE設定 Internet Explorer--->屬性-->串連--->區域網路設定-->運行代理(能上網的電腦)IP 加連接埠號碼; 實作類別 import java.net.*;import java.io.*;public class HttpProxy extends Thread { static public int
Time of Update: 2018-12-04
轉載自http://www.blogjava.net/jiangshachina/archive/2012/02/13/369898.html關於Java序列化的文章早已是汗牛充棟了,本文是對我個人過往學習,理解及應用Java序列化的一個總結。此文內容涉及Java序列化的基本原理,以及多種方法對序列化形式進行定製。在撰寫本文時,既參考了Thinking in Java, Effective
Time of Update: 2018-12-04
今天在做遊戲的聯賽系統,假如有N 人報名參加聯賽,伺服器記錄下報名人數,並對這些人的戰鬥後的結果進行排序,決出前16強或者8強。網上找了下錦標賽排序演算法,內容真少。總結下:1:建樹:這裡說的建樹是建立一顆完全二叉樹。當參加排序的數組不足2的N次冪,將其補足。直到滿足建立一個完全二叉樹2:當某結點的比較對手的參選標誌為“不再參選”,該結點自動升入雙親結點,此動作不計入排序碼比較次數。每次比較出來的第一名都標記為不參賽。3:最終結果是返回到原來的數組之中4:堆排序,資料很多,不多說。/** *
Time of Update: 2018-12-04
今天公司需要用代理上網,以前放在伺服器上的程式現在在本機類比用戶端無法登陸,原來問題就是出在代理上。在這裡記錄下。網路大概結構假如類比用戶端在PC1上通過外網訪問位於主機上的伺服器程式,直接使用Socket是無法訪問的,因為代理的限制。上網Google+百度解決如下:String proxyHost = "192.168.0.222 ";String proxyPort = "1080 ";System.getProperties().put("socksProxySet ", "true ")
Time of Update: 2018-12-04
xml檔案如下:<?xml version="1.0" encoding="gb2312"?><!DOCTYPE Catalog [ <!ENTITY dt " "> <!ENTITY at
Time of Update: 2018-12-04
虛擬機器產生異常的原由與處理產生原因:1。由於不正常的語句背虛擬機器檢測到。拋出異常在語句執行點。可能情況有:違反語義的操作如數組過界;資源越界;串連程式時出錯 2。java代碼執行throws語句 3。非同步異常:ThreadGroup的stop()方法調用與虛擬機器內部發生錯誤。處理異常:封閉try內部代碼轉到靠try最近的catch語句中,在沒有catch語句情況下該線程停止,只有finnaly語句執行;並且當其線程父類 ThreadGroup調用unCatchedException後才終
Time of Update: 2018-12-04
在網上找了很多例子,最後拼起來的結果,year,month 可以是自己寫好的字串<% String year = session.getAttribute("year").toString(); String month =session.getAttribute("month").toString(); String day = "01"; String t = year+"-"+month+"-"+day; Calendar calendar =
Time of Update: 2018-12-04
本來準備使用sax解析的 ,結果看到sax是採用事件啟用機制,只有startDocument(),startElement(),endDocument(),endDocument,character()這幾種事件,沒有找到好方法取得上例中得<t></t>包含得資料。於是採用了Dom解析dom解析對大檔案解析速度較慢,要一個一個節點遍曆。所以只有在萬不得已得情況下使用 。在這次解析過程中主要使用了node,nodelist 兩個類。方法也