[英]array return a String and not an Object
你好,我不得不做出一个程序首先我询问日志代码我把try/catch
,因为我想要的密码是唯一的号码,如果给一个字符来刺激异常,secont不显示对象的数组Product
,但一个字符串Productl@pos51sd
,我找不到为什么给我看这个。
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);
}
}
}
它打印toString()方法的结果。
您可以在System.out上找到有关打印例外的一些详细信息。 在Java中http://alvinalexander.com/blog/post/java/java-exception-printing-log4j
不幸的是,您没有向我们展示Product
类,但是您实际想要做的是根据您的要求在此类中实现toString()
方法。 我不知道pos51sd
是什么,只是为了讨论,我们将包含此值code
变量称为。
在这种情况下,您的类Product
应该如下所示:
class Product {
.....
private String code;
.......
public String toString() {
return getClass().getSimpleName() + "@" + code;
}
}
类Product'import java.io.Serializable;
公共类产品实现了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 +" )";
}
}'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.