2013-04-15 228 views
1

你好,我必须先做一个程序我要求登录的代码我把try/catch因为我想密码只有数字,如果给一个字符来刺激异常 和secont没有显示对象Product的数组,但是一个字符串[email protected],我无法找到为什么让我看到这个。数组返回一个字符串,而不是一个对象

import java.rmi.Naming; 
import java.util.Scanner; 


public class RMIClient { 

    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 
     Scanner in = new Scanner(System.in); 
       int pin=0; 
     try { 

      String name = "//Localhost/RMI_Server"; 
      Functions lp =(Functions)Naming.lookup(name); 
      try{ 
      System.out.println("Please give your Personal Code (PIN)"); 

         pin=in.nextInt(); 
      }catch (NumberFormatException nfe) { 
        System.out.println("Input must be a number."); 
          } 
      if(lp.validate(pin)){ 
      System.out.println("Give description of item"); 
      String desc=in.next(); 
         int sizep=lp.search(desc).length; 
         Product [] p =new Product[sizep]; 
         System.arraycopy(lp.search(desc),0,p,0,sizep); 
         for(int i=0;i<sizep;i++){ 
      System.out.println(p[i].toString());} 
      System.out.println("Give numberCode of item you want to buy"); 
      String code=in.next(); 
      System.out.println(lp.purchase(code)); 
      }else{ 
      System.out.println("Your code is False");} 
      lp.close(); 
     }catch (Exception e) { 
      System.out.println("SumClient err: " + e); 
      System.exit(1); 
     } 
    } 
} 
+0

请发表你的产品的toString代码接收 –

回答

0

不幸的是,你还没有向我们展示了类Product但你真正想要做的是根据您的要求在这个类来实现方法toString()。我不知道pos51sd是什么,但只是为了讨论,让我们调用包含这个值code的变量。

在这种情况下,你Product类应该是这样的:

class Product { 
    ..... 
    private String code; 
    ....... 

    public String toString() { 
     return getClass().getSimpleName() + "@" + code; 
    } 
} 
+1

精确输出 ' 公共字符串toSting(){ \t \t返回“Item”+ serialNum +“是来自”+ company +“price”+ price +“E的产品描述:(”+ description +“)”; 。 \t \t \t} ' –

0

类产品“的Bean;

公共类产品实现Serializable {

private String description; 
private String serialNum; 
private float price; 
private String company; 

public Product(String description,String serialNum,float price,String company){ 
this.description=description; 
this.serialNum=serialNum; 
this.price=price; 
this.company=company;  
} 

public void set_description(String description){this.description=description;} 
public String get_description(){return description;} 
public void set_serialNum(String serialNum){this.serialNum=serialNum;} 
public String get_serialNum(){return serialNum;} 
public void set_price(float price){this.price=price;} 
public float get_price(){return price;} 
public void set_company(String company){this.company=company;} 
public String get_company(){return company;} 



public String toSting(){ 
    return "Item "+ serialNum +" is product from "+ company +" price " + price +"E Description: ("+ description +")"; 

} 

} '

+0

我改变的ToString' 返回的getClass()的getName()+ “项目 ”+ SERIALNUM +“ 是从产品的 ”+公司+“ 价格” +价格+ “E说明:(” +说明+ “)”;'但我有同样的问题 –

相关问题