public class ChatClient extends JFrame{
JTextField jftxt=new JTextField();
JTextArea jatxt=new JTextArea(10,10);
static String str;
DataInputStream resevier = null;
DataOutputStream send = null;
public static void main(String[] args){
new ChatClient().launchfeame();
}
public void launchfeame(){
this.setLocation(400,100);
this.setSize(200,400);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.add(jftxt,BorderLayout.SOUTH);
this.add(jatxt,BorderLayout.NORTH);
jftxt.addActionListener(new Tflistener());
pack();
this.setVisible(true);
launchnet();
}public void launchnet(){
ServerSocket server = null; Socket sk = null;
try {
Socket s = new Socket("127.0.0.1", 8888);
} catch (UnknownHostException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
}
try {
resevier = new DataInputStream(sk.getInputStream());
send = new DataOutputStream(sk.getOutputStream());
} catch (IOException ex) {
Logger.getLogger(ChatServer.class.getName()).log(Level.SEVERE, null, ex);
}
}
private class Tflistener implements ActionListener{
public void actionPerformed(ActionEvent ae) {
str=jftxt.getText();
jatxt.setText(str+"\n"+"------------------------");
jftxt.setText("");
try {
send.writeUTF(str);
} catch (IOException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}服务端public class ChatServer extends JFrame{
static String str; DataInputStream resevier = null; DataOutputStream send = null; JTextField jftxt=new JTextField(); JTextArea jatxt=new JTextArea(10,10);public static void main(String[] args){
new ChatClient().launchfeame();
}
public void launchfeame(){
this.setLocation(400,100);
this.setSize(200,400);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.add(jftxt,BorderLayout.SOUTH);
this.add(jatxt,BorderLayout.NORTH);
jftxt.addActionListener(new Tflistener());
pack();
this.setVisible(true);
launchnet();
}public void launchnet(){
ServerSocket server = null;
Socket sk = null;
try {
server = new ServerSocket(8888);
while(true){
sk= server.accept();
System.out.print("连接成功!");
}
} catch (IOException ex) {
ex.printStackTrace();
}
try {
resevier = new DataInputStream(sk.getInputStream());
send = new DataOutputStream(sk.getOutputStream());
} catch (IOException ex) {
Logger.getLogger(ChatServer.class.getName()).log(Level.SEVERE, null, ex);
}
try {
str=resevier.readUTF();
System.out.print(str);
} catch (IOException ex) {
Logger.getLogger(ChatServer.class.getName()).log(Level.SEVERE, null, ex);
}
}private class Tflistener implements ActionListener{ public void actionPerformed(ActionEvent ae) {
str=jftxt.getText();
jatxt.setText(str+"\n"+"------------------------");
jftxt.setText("");
}}
}
错误提示
2010-12-28 11:36:27 chat02.ChatClient launchnet
严重: null
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at chat02.ChatClient.launchnet(ChatClient.java:51)
at chat02.ChatClient.launchfeame(ChatClient.java:45)
at chat02.ChatServer.main(ChatServer.java:34)
Exception in thread "main" java.lang.NullPointerException
at chat02.ChatClient.launchnet(ChatClient.java:58)
at chat02.ChatClient.launchfeame(ChatClient.java:45)
at chat02.ChatServer.main(ChatServer.java:34)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at chat02.ChatClient$Tflistener.actionPerformed(ChatClient.java:70)
JTextField jftxt=new JTextField();
JTextArea jatxt=new JTextArea(10,10);
static String str;
DataInputStream resevier = null;
DataOutputStream send = null;
public static void main(String[] args){
new ChatClient().launchfeame();
}
public void launchfeame(){
this.setLocation(400,100);
this.setSize(200,400);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.add(jftxt,BorderLayout.SOUTH);
this.add(jatxt,BorderLayout.NORTH);
jftxt.addActionListener(new Tflistener());
pack();
this.setVisible(true);
launchnet();
}public void launchnet(){
ServerSocket server = null; Socket sk = null;
try {
Socket s = new Socket("127.0.0.1", 8888);
} catch (UnknownHostException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
}
try {
resevier = new DataInputStream(sk.getInputStream());
send = new DataOutputStream(sk.getOutputStream());
} catch (IOException ex) {
Logger.getLogger(ChatServer.class.getName()).log(Level.SEVERE, null, ex);
}
}
private class Tflistener implements ActionListener{
public void actionPerformed(ActionEvent ae) {
str=jftxt.getText();
jatxt.setText(str+"\n"+"------------------------");
jftxt.setText("");
try {
send.writeUTF(str);
} catch (IOException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}服务端public class ChatServer extends JFrame{
static String str; DataInputStream resevier = null; DataOutputStream send = null; JTextField jftxt=new JTextField(); JTextArea jatxt=new JTextArea(10,10);public static void main(String[] args){
new ChatClient().launchfeame();
}
public void launchfeame(){
this.setLocation(400,100);
this.setSize(200,400);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.add(jftxt,BorderLayout.SOUTH);
this.add(jatxt,BorderLayout.NORTH);
jftxt.addActionListener(new Tflistener());
pack();
this.setVisible(true);
launchnet();
}public void launchnet(){
ServerSocket server = null;
Socket sk = null;
try {
server = new ServerSocket(8888);
while(true){
sk= server.accept();
System.out.print("连接成功!");
}
} catch (IOException ex) {
ex.printStackTrace();
}
try {
resevier = new DataInputStream(sk.getInputStream());
send = new DataOutputStream(sk.getOutputStream());
} catch (IOException ex) {
Logger.getLogger(ChatServer.class.getName()).log(Level.SEVERE, null, ex);
}
try {
str=resevier.readUTF();
System.out.print(str);
} catch (IOException ex) {
Logger.getLogger(ChatServer.class.getName()).log(Level.SEVERE, null, ex);
}
}private class Tflistener implements ActionListener{ public void actionPerformed(ActionEvent ae) {
str=jftxt.getText();
jatxt.setText(str+"\n"+"------------------------");
jftxt.setText("");
}}
}
错误提示
2010-12-28 11:36:27 chat02.ChatClient launchnet
严重: null
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at chat02.ChatClient.launchnet(ChatClient.java:51)
at chat02.ChatClient.launchfeame(ChatClient.java:45)
at chat02.ChatServer.main(ChatServer.java:34)
Exception in thread "main" java.lang.NullPointerException
at chat02.ChatClient.launchnet(ChatClient.java:58)
at chat02.ChatClient.launchfeame(ChatClient.java:45)
at chat02.ChatServer.main(ChatServer.java:34)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at chat02.ChatClient$Tflistener.actionPerformed(ChatClient.java:70)
解决方案 »
- 如果通过java往一个word文件中插入文字内容
- 抽象类能继承实体类?这有什么意义?
- poi中用workbook对象setSheetName后,输出的execel对应的sheet名是乱码,解决就给分。
- /**小妹lily**/ JavaTM 2 Runtime Environment (J2RE)和JavaTM 2 Software Development Kit (J2SDK)有什么区别?
- 如何把 .class 文件打包成执行文件 .jar
- 为什么我下载的installAnywhere不能用?急
- http://expert.csdn.net/Expert/topic/1602/1602343.xml?temp=.8596918大家来拿分
- 献分咯!
- JDBC的字符串长度问题,请各位帮助!
- 通过class返回类原来的对象
- 诚挚请教关于java的网络编程。
- 求JAVA程序设计课后答案
报上述异常是由于你ChatServer的main函数里new的是ChatClient的对象public static void main(String[] args){
new ChatClient().launchfeame();
}还有一个错是,ChatClient里面Socket的对象用的空指针public void launchnet(){
ServerSocket server = null; Socket sk = null;
try {
Socket s = new Socket("127.0.0.1", 8888); // 套接字对象是s
} catch (UnknownHostException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(ChatClient.class.getName()).log(Level.SEVERE, null, ex);
}
try {
resevier = new DataInputStream(sk.getInputStream()); // 用的是sk,空指针
send = new DataOutputStream(sk.getOutputStream());
} catch (IOException ex) {
Logger.getLogger(ChatServer.class.getName()).log(Level.SEVERE, null, ex);
}
}