什么樣的源代碼?。浚??純java的源代碼的話就是都可以運行
創(chuàng)新互聯(lián)公司主營汨羅網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,成都app軟件開發(fā),汨羅h5重慶小程序開發(fā)搭建,汨羅網(wǎng)站營銷推廣歡迎汨羅等地區(qū)企業(yè)咨詢
直接打** .java就可以了
如果是一個案例那就不一樣了,那都是類,比如說一個項目,通過就是jsp頁面去調(diào)用已設計好的類,那樣有的就執(zhí)行不了,只能編譯
有什么問題可以通過百度hi找我,隨時在線
【ClientSocketDemo.java 客戶端Java源代碼】 import java.net.*; import java.io.*; public class ClientSocketDemo { //聲明客戶端Socket對象socket Socket socket = null; //聲明客戶器端數(shù)據(jù)輸入輸出流 DataInputStream in; DataOutputStream out; //聲明字符串數(shù)組對象response,用于存儲從服務器接收到的信息 String response[]; //執(zhí)行過程中,沒有參數(shù)時的構(gòu)造方法,本地服務器在本地,取默認端口10745 public ClientSocketDemo() { try { //創(chuàng)建客戶端socket,服務器地址取本地,端口號為10745 socket = new Socket("localhost",10745); //創(chuàng)建客戶端數(shù)據(jù)輸入輸出流,用于對服務器端發(fā)送或接收數(shù)據(jù) in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); //獲取客戶端地址及端口號 String ip = String.valueOf(socket.getLocalAddress()); String port = String.valueOf(socket.getLocalPort()); //向服務器發(fā)送數(shù)據(jù) out.writeUTF("Hello Server.This connection is from client."); out.writeUTF(ip); out.writeUTF(port); //從服務器接收數(shù)據(jù) response = new String[3]; for (int i = 0; i response.length; i++) { response[i] = in.readUTF(); System.out.println(response[i]); } } catch(UnknownHostException e){e.printStackTrace();} catch(IOException e){e.printStackTrace();} } //執(zhí)行過程中,有一個參數(shù)時的構(gòu)造方法,參數(shù)指定服務器地址,取默認端口10745 public ClientSocketDemo(String hostname) { try { //創(chuàng)建客戶端socket,hostname參數(shù)指定服務器地址,端口號為10745 socket = new Socket(hostname,10745); in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); String ip = String.valueOf(socket.getLocalAddress()); String port = String.valueOf(socket.getLocalPort()); out.writeUTF("Hello Server.This connection is from client."); out.writeUTF(ip); out.writeUTF(port); response = new String[3]; for (int i = 0; i response.length; i++) { response[i] = in.readUTF(); System.out.println(response[i]); } } catch(UnknownHostException e){e.printStackTrace();} catch(IOException e){e.printStackTrace();} } //執(zhí)行過程中,有兩個個參數(shù)時的構(gòu)造方法,第一個參數(shù)hostname指定服務器地址 //第一個參數(shù)serverPort指定服務器端口號 public ClientSocketDemo(String hostname,String serverPort) { try { socket = new Socket(hostname,Integer.parseInt(serverPort)); in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); String ip = String.valueOf(socket.getLocalAddress()); String port = String.valueOf(socket.getLocalPort()); out.writeUTF("Hello Server.This connection is from client."); out.writeUTF(ip); out.writeUTF(port); response = new String[3]; for (int i = 0; i response.length; i++) { response[i] = in.readUTF(); System.out.println(response[i]); } } catch(UnknownHostException e){e.printStackTrace();} catch(IOException e){e.printStackTrace();} } public static void main(String[] args) { String comd[] = args; if(comd.length == 0) { System.out.println("Use localhost(127.0.0.1) and default port"); ClientSocketDemo demo = new ClientSocketDemo(); } else if(comd.length == 1) { System.out.println("Use default port"); ClientSocketDemo demo = new ClientSocketDemo(args[0]); } else if(comd.length == 2) { System.out.println("Hostname and port are named by user"); ClientSocketDemo demo = new ClientSocketDemo(args[0],args[1]); } else System.out.println("ERROR"); } } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 【ServerSocketDemo.java 服務器端Java源代碼】 import java.net.*; import java.io.*; public class ServerSocketDemo { //聲明ServerSocket類對象 ServerSocket serverSocket; //聲明并初始化服務器端監(jiān)聽端口號常量 public static final int PORT = 10745; //聲明服務器端數(shù)據(jù)輸入輸出流 DataInputStream in; DataOutputStream out; //聲明InetAddress類對象ip,用于獲取服務器地址及端口號等信息 InetAddress ip = null; //聲明字符串數(shù)組對象request,用于存儲從客戶端發(fā)送來的信息 String request[]; public ServerSocketDemo() { request = new String[3]; //初始化字符串數(shù)組 try { //獲取本地服務器地址信息 ip = InetAddress.getLocalHost(); //以PORT為服務端口號,創(chuàng)建serverSocket對象以監(jiān)聽該端口上的連接 serverSocket = new ServerSocket(PORT); //創(chuàng)建Socket類的對象socket,用于保存連接到服務器的客戶端socket對象 Socket socket = serverSocket.accept(); System.out.println("This is server:"+String.valueOf(ip)+PORT); //創(chuàng)建服務器端數(shù)據(jù)輸入輸出流,用于對客戶端接收或發(fā)送數(shù)據(jù) in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); //接收客戶端發(fā)送來的數(shù)據(jù)信息,并顯示 request[0] = in.readUTF(); request[1] = in.readUTF(); request[2] = in.readUTF(); System.out.println("Received messages form client is:"); System.out.println(request[0]); System.out.println(request[1]); System.out.println(request[2]); //向客戶端發(fā)送數(shù)據(jù) out.writeUTF("Hello client!"); out.writeUTF("Your ip is:"+request[1]); out.writeUTF("Your port is:"+request[2]); } catch(IOException e){e.printStackTrace();} } public static void main(String[] args) { ServerSocketDemo demo = new ServerSocketDemo(); } } 你可以去這里看看
你安裝JDK的目錄下,有個src.zip文件,這個就是JDK源代碼的java文件。
你可以解壓來查看,但,最好是關聯(lián)到IDE如?eclipse?中(不需解壓),然后?CTRL?+?點擊就可以查看到源代碼了。
如下圖:
是這樣的。
你打開命令行窗口,然后輸入 cd "Program Files",回車;
簡單點,也可以輸入cd P ,然后按Tab鍵,會給你自己補全的,要是你按了出來的不是 "Program Files",那你再按Tab,直到出來為止。
剩下的。。。就是JAVA的事了 。。
如果現(xiàn)在要求對你寫的Java代碼進行優(yōu)化,那你會怎么做呢?作者在本文介紹了可以提高系統(tǒng)性能以及代碼可讀性的四種方法,如果你對此感興趣,就讓java課程一起來看看吧。
我們平時的編程任務不外乎就是將相同的技術套件應用到不同的項目中去,對于大多數(shù)情況來說,這些技術都是可以滿足目標的。
然而,有的項目可能需要用到一些特別的技術,因此工程師們得深入研究,去尋找那些最簡單但最有效的方法。
在以前一篇文章中,我們討論了必要時可以使用的四種特殊技術,這些特殊技術可以創(chuàng)建更好的Java軟件;而本文我們將介紹一些有助于解決常見問題的通用設計策略和目標實現(xiàn)技術,即:?1.只做有目的性的優(yōu)化?2.常量盡量使用枚舉?3.重新定義類里面的equals()方法?4.盡量多使用多態(tài)性值得注意的是,本文中描述的技術并不是適用于所有情況。
另外這些技術應該什么時候使用以及在什么地方使用,都是需要使用者經(jīng)過深思熟慮的。
1.只做有目的性的優(yōu)化大型軟件系統(tǒng)肯定非常關注性能問題。
雖然我們希望能夠?qū)懗鲎罡咝У拇a,但很多時候,如果想對代碼進行優(yōu)化,我們卻無從下手。
最重要的是天下沒有免費的午餐,因此為了降低代價,我們通常會通過類似于緩存、循環(huán)展開或預計算值這類技術去實現(xiàn)優(yōu)化,這樣反而增加了系統(tǒng)的復雜性,也降低了代碼的可讀性。
如果這種優(yōu)化可以提高系統(tǒng)的性能,那么即使變得復雜,那也是值得的,但是做決定之前,必須首先知道這兩條信息:?1.性能要求是什么?2.性能瓶頸在哪里首先我們需要清楚地知道性能要求是什么。
如果最終是在要求以內(nèi),并且最終用戶也沒有提出什么異議,那么就沒有必要進行性能優(yōu)化。
但是,當添加了新功能或者系統(tǒng)的數(shù)據(jù)量達到一定規(guī)模以后就必須進行優(yōu)化了,否則可能會出現(xiàn)問題。
在這種情況下,不應該靠直覺,也不應該依靠檢查。
因為即使是像MartinFowler這樣有經(jīng)驗的開發(fā)人員也容易做一些錯誤的優(yōu)化,正如在重構(gòu)(第70頁)一文中解釋的那樣:如果分析了足夠多的程序以后,你會發(fā)現(xiàn)關于性能的有趣之處在于,大部分時間都浪費在了系統(tǒng)中的一小部分代碼中里面。
如果對所有代碼進行了同樣的優(yōu)化,那么最終結(jié)果就是浪費了90%的優(yōu)化,因為優(yōu)化過以后的代碼運行得頻率并不多。
因為沒有目標而做的優(yōu)化所耗費的時間,都是在浪費時間。
文章名稱:java優(yōu)質(zhì)代碼在哪里 java高質(zhì)量代碼
文章源于:http://chinadenli.net/article4/hgdhie.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、移動網(wǎng)站建設、外貿(mào)建站、搜索引擎優(yōu)化、響應式網(wǎng)站、網(wǎng)站維護
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)