class publicValue
{
//String hostName_IP = "localhost";
private String hostName_IP = "192.168.1.108";
private int portNumber = 1099;
private String portURL = "//" + hostName_IP + ':' + portNumber + '/';
public String getHostName_IP()
{
return hostName_IP;
}
public int getPortNumber()
{
return portNumber;
}
public String getPortURL()
{
return portURL;
}
public void String setHostName_IP(String _hostName_IP)
{
//此处编写修改 hostName_IP 的方法
}
}如上面所示,怎么写3个方法,分别修改publicValue类的私有成员hostName_IP、portNumber、portURL.
请高手指点,谢过啦!

解决方案 »

  1.   

    可能你没有表达清楚你的意思,像上面的代码,你直接使用hostName_IP =  _hostName_IP;不行吗?
      

  2.   

    编译后提示:I:\Source\Try\CSA\CSA.java:30: 需要 '('
        public void String setHostName_IP(String _hostName_IP)
                           ^
    1 错误Process completed.
      

  3.   

    public void String setHostName_IP(String _hostName_IP) 

     hostName_IP= _hostName_IP;

    public void String setPortNumber(String _portNumber) 

     portNumber= _portNumber;

    public void String setPortURL(String _hostName_IP ,String _portNumber ) 

     portURL = "//" + _hostName_IP + ':' + _portNumber + '/'; 
    } 这个意思?
      

  4.   

    返回值怎么能同时是void和String呢,返回值应该是void。这是标准的JAVABEAN写法。
      

  5.   

    生成相应的get和set方法,用set方法修改不行吗?
      

  6.   

    public void String setHostName_IP(String _hostName_IP) 
    {}
    不能有的多个返回值把String去掉好了
      

  7.   

    去掉String后确实可以通过编译,但是如果我要在另外一个类中创建publicValue的对象,调用setHostName_IP方法,以修改hostName_IP的值,这样可以吗?代码如下:class publicValue
    {
    //String hostName_IP = "localhost";
    private String hostName_IP = "192.168.1.108";
    private int portNumber = 1099;
    private String portURL = "//" + hostName_IP + ':' + portNumber + '/';
    public String getHostName_IP()
    {
    return hostName_IP;
    }
    public int getPortNumber()
    {
    return portNumber;
    }
    public String getPortURL()
    {
    return portURL;
    }
    public void setHostName_IP(String _hostName_IP)
    {
    //此处编写修改 hostName_IP 的方法
    hostName_IP = _hostName_IP;
    }

    class A{
    publicValue pubValue = new publicValue();
    pubValue.setHostName_IP(String "192.168.1.108");
    }编译就会有下面提示:
    I:\Source\Try\CSA\CSA.java:44: 需要 <标识符>
        pubValue.setHostName_IP(String "192.168.1.108");
                               ^
    I:\Source\Try\CSA\CSA.java:44: 需要 <标识符>
        pubValue.setHostName_IP(String "192.168.1.108");
                                      ^
    I:\Source\Try\CSA\CSA.java:44: 需要 ';'
        pubValue.setHostName_IP(String "192.168.1.108");
                                                      ^
    3 错误Process completed.
      

  8.   

    怎么都是编译时错误,难道你没有IDE来编写java程序么?
      

  9.   

    public void String setHostName_IP(String _hostName_IP) 
    不能同时存在两种返回类型,把String去掉!class publicValue 

    private String hostName_IP = "192.168.1.108"; 
    private int portNumber = 1099; 
    private String portURL = "//" + hostName_IP + ':' + portNumber + '/'; 
    public String getHostName_IP() 

    return hostName_IP; 

    public int getPortNumber() 

    return portNumber; 

    public String getPortURL() 

    return portURL; 

    public void setHostName_IP(String _hostName_IP) 

     hostName_IP=_hostName_IP;


    public class A
    {
    public void main(String args[]){
    publicValue pubValue = new publicValue(); 
    pubValue.setHostName_IP("192.168.1.108");}
     }
      

  10.   

    但是如果我要在另外一个类中创建publicValue的对象,调用setHostName_IP方法,以修改hostName_IP的值,这样可以吗?
    可以  而且面向对象编程都是这么干的。class A{ 
    publicValue pubValue = new publicValue(); 
    pubValue.setHostName_IP(String "192.168.1.108"); 

    改成
    class A{ 
    publicValue pubValue = new publicValue(); 
    pubValue.setHostName_IP("192.168.1.108");