2016-04-28 50 views
1

当我尝试编译此代码时,我收到各种错误;其中我最可疑的一个是:在类Socket为什么我无法为此Socket类提供构造函数参数?

构造插座不能用于给定类型

这里是我的代码:

import java.io.*; 
import java.net.*; 

public class Socket { 
    public static void main(String[] args) { 
     try { 
      Socket s = new Socket("localhost", 6666); 
      DataOutputStream dout = new DataOutputStream(s.getOutputStream()); 
      dout.writeUTF("Hello Server"); 
      dout.flush(); 
      dout.close(); 
      s.close(); 
     } catch (Exception e) { 
      System.out.println(e); 
     } 
    } 
} 
+3

您正试图重载'java.net.Socket'更改类名 – 3kings

+0

Socket是您自己的类,而不是java.net.Socket。不要调用你的类Socket。 –

回答

3

既然你称为自己的类Socket,则需要使用完全限定名称来引用Java的Socket类。

java.net.Socket s = new java.net.Socket("localhost",6666); 

在将来,我会建议命名您的类似于现有的API中有什么来避免这样的混乱类的东西。

相关问题