//這是個(gè)聊天程序, 在ECLIPSE 運(yùn)行 Client.java 就可以了。 連接是:localhost
創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營(yíng)銷、網(wǎng)站重做改版、龍華網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、電子商務(wù)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為龍華等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
//Server 代碼,
package message;
import java.io.*;
import java.net.*;
import java.util.*;
public class Server {
public static void main(String[] args) throws Exception{
System.out.print("Server");
ServerSocket socket=new ServerSocket(8888);
Vector v=new Vector();
while(true){
Socket sk=socket.accept();
DataInputStream in=new DataInputStream(sk.getInputStream());
DataOutputStream out=new DataOutputStream(sk.getOutputStream());
v.add(sk);
new ServerThread(in,v).start();
}
}
}
//ServerThread.java 代碼
package message;
import java.net.*;
import java.io.*;
import java.util.*;
public class ServerThread extends Thread{
DataInputStream in;
Vector all;
public ServerThread(DataInputStream in,Vector v){
this.in=in;
this.all=v;
}
public void run()
{
while(true)
{
try{
String s1=in.readUTF();
for(int i=0;iall.size();i++)
{
Object obj=all.get(i);
Socket socket=(Socket)obj;
DataOutputStream out=new DataOutputStream(socket.getOutputStream());
out.writeUTF(s1);
System.out.print(i);
out.flush();
}
System.out.print("Message send over!");
}catch(Exception e){e.printStackTrace();};
}
}
}
//ClientFrame.java 代碼
package message;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.*;
import java.io.*;
public class ClientFrame extends JFrame implements ActionListener{
JButton b1=new JButton ("SendMessage");
JButton b2=new JButton("Link Server");
JTextField t1=new JTextField(20);
JTextField t2=new JTextField(20);
JLabel l=new JLabel("輸入服務(wù)器名字:");
JTextArea area=new JTextArea(10,20);
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
JPanel p4=new JPanel();
Socket socket;
public ClientFrame()
{
this.getContentPane().add(p1);
p2.add(new JScrollPane(area));
p3.add(t1);
p3.add(b1);
p4.add(l);
p4.add(t2);
p4.add(b2);
p2.setLayout(new FlowLayout());
p3.setLayout(new FlowLayout());
p4.setLayout(new FlowLayout());
p1.setLayout(new BorderLayout());
p1.add("North",p2);
p1.add("Center",p3);
p1.add("South",p4);
b1.addActionListener(this);
b2.addActionListener(this);
this.pack();
show();
}
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand().equals("Link Server"))
{
try{
socket=new Socket(t2.getText(),8888);
b2.setEnabled(false);
JOptionPane.showMessageDialog(this, "Connection Success");
DataInputStream in=new DataInputStream(socket.getInputStream());
new ClientThread(in,area).start();
}
catch(Exception e1){
JOptionPane.showMessageDialog(this, "Connection Error");
e1.printStackTrace();};
}
else if(e.getActionCommand().equals("SendMessage"))
{
try{
DataOutputStream out=new DataOutputStream(socket.getOutputStream());
out.writeUTF(t1.getText());
t1.setText("");
}catch(Exception e1){e1.printStackTrace();};
}
}
}
//ClientThread.java 代碼
package message;
import java.net.*;
import java.io.*;
import javax.swing.*;
public class ClientThread extends Thread {
DataInputStream in;
JTextArea area;
public ClientThread(DataInputStream in,JTextArea area){
this.in=in;
this.area=area;
}
public void run()
{
while(true){
try{
String s=in.readUTF();
area.append(s);
}
catch(Exception e){e.printStackTrace();};
}
}
}
//Client.java代碼
package message;
public class Client {
/**
* @param args
*/
public static void main(String[] args) {
new ClientFrame();
}
}
// 每段代碼都是個(gè)類,不要弄在一個(gè)文件里。 運(yùn)行 Client.java
good luck to you!
步驟:
1、在存放使用資源的res文件夾下的layout文件夾內(nèi)新建一個(gè)XML布局文件,如命名為:page1.xml。
2、在存放資、代碼的文件夾下下找到MainActivity.java,雙擊打開,在onCreate的方法內(nèi)添加關(guān)聯(lián)代碼。
《第一行代碼Java視頻講解版》百度網(wǎng)盤pdf最新全集下載:
鏈接:
?pwd=t7i1 提取碼: t7i1
簡(jiǎn)介:第一行代碼 Java 視頻講解版從初學(xué)者的角度,以豐富的例子、通俗易懂的語(yǔ)言、簡(jiǎn)單的圖示,詳細(xì)地介紹了Java開發(fā)中重點(diǎn)用到的多種技術(shù)。全書分為15章,包括Java簡(jiǎn)介、程序基本概念、面向?qū)ο蠡靖拍?、面向?qū)ο蟾呒?jí)知識(shí)、包及訪問(wèn)控制權(quán)限、異常的捕獲及處理、Eclipse開發(fā)工具、Java新特性、多線程、Java常用類庫(kù)、Java IO編程、Java網(wǎng)絡(luò)編程、Java類集框架、Java數(shù)據(jù)庫(kù)編程、DAO設(shè)計(jì)模式等內(nèi)容。? ?
1. java2s
這個(gè)網(wǎng)站非常好,分成三大類,分別是Example 、Products 、 Articles ,每個(gè)大類下又分別設(shè)許多小類,還有搜索功能,這樣查找起來(lái)非常方便。。比如,如果要學(xué)習(xí)SWT/JFace,只要把Example下的SWT JFace Eclipse 研究一下也就可以了。另外,這個(gè)網(wǎng)站還有JavaScript DHTML 、 C# / C Sharp 、 C / ANSI-C 、 SQL / MySQL 等類??傊?,非常好。
2. codeZoo
這是O'Reily旗下的,除了Java之外,還有Ruby、Python。
3. Java學(xué)習(xí)源代碼檢索系統(tǒng)
難得看見國(guó)產(chǎn)的,好歹也要支持一下,分類也算清楚。
4. Koders
是個(gè)綜合查詢的網(wǎng)站,不過(guò)它好像是從代碼中查找關(guān)鍵詞,包含的語(yǔ)言挺多的。
5. Resources for Java server-side developers
確切的說(shuō),它是一個(gè)資源收集的網(wǎng)站,代碼查詢并不多。不過(guò)它分類相當(dāng)細(xì),如Articles、Books、Examples、Extensions、Frameworks等類,你可以輸入Spring或Hibernate作為關(guān)鍵詞搜索一下看看。
-----
《編寫高質(zhì)量代碼改善java程序的151個(gè)建議》百度網(wǎng)盤pdf最新全集下載:
鏈接:
?pwd=2dar 提取碼: 2dar
簡(jiǎn)介:《編寫高質(zhì)量代碼:改善Java程序的151個(gè)建議》針對(duì)每個(gè)問(wèn)題所設(shè)計(jì)的應(yīng)用場(chǎng)景都非常典型,給出的建議也都與實(shí)踐緊密結(jié)合。書中的每一條建議都可能在你的下一行代碼、下一個(gè)應(yīng)用或下一個(gè)項(xiàng)目中嶄露頭角,建議你將此書擱置在手邊,隨時(shí)查閱,一定能使你的學(xué)習(xí)和開發(fā)工作事半功倍。 ?
新聞標(biāo)題:java代碼資源 java編程源代碼
瀏覽路徑:http://muchs.cn/article34/docdise.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、動(dòng)態(tài)網(wǎng)站、網(wǎng)站導(dǎo)航、網(wǎng)站制作、、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容