从JAVA中的其他类运行服务器/客户端

时间:2015-03-26 00:08:16

标签: java

我有两个类,Server和Client,我想在两者之间为游戏交换int数组。我想要做的是从不同的类游戏运行服务器和客户端,我的所有接口/算法都在其中实现。所以我只是不知道如何从我的actionListeners运行Server和Client。

服务器代码:

public class Serveur{
    static int [] pos;

    public static int[] getData(Socket s){
        try{
            InputStream is = s.getInputStream();  
            ObjectInputStream ois = new ObjectInputStream(is);  
            pos = (int[])ois.readObject();
        } catch(IOException e){
            e.printStackTrace();
        } catch(ClassNotFoundException e){
            System.out.println("No Class");
        }
            return pos;
    }

    public static void main(String[] zero){


        try{    
            ServerSocket ss = new ServerSocket(3000);
            Socket s = ss.accept();
            getData(s);
            for(int i=0; i<pos.length; i++)
                System.out.println(pos[i]);
        } catch(IOException e){
            e.printStackTrace();
        }


    }
}

客户代码:

public class Client {



    /**
     *Method sending arrays to the Server
     */
    public static void sendData(Socket s, int[] pos) throws IOException{
            OutputStream os = s.getOutputStream();  
            ObjectOutputStream oos = new ObjectOutputStream(os);  
            oos.writeObject(pos); 
        }

    public static void main(String[] zero){


        Socket socket;
        try {
            int [] pos = {1,2};
            socket = new Socket(InetAddress.getLocalHost(),3000);
            sendData(socket, pos);


        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

这只是第一次测试,我对Sockets很新。当我在终端运行时,我去: java Serveur 在另一个: java客户端

然后我的服务器打印1 2.

那么如何从另一个类运行Server和Client?我们的想法是拥有一个用于启动游戏的actionListener,它将启动Server,当其他人尝试连接时,会创建一个将两者连接起来的Client。也许我做错了?

我希望我足够精确。谢谢

0 个答案:

没有答案