Java:将同一对象作为参数传递的对象构造函数

我创建了一个名为Transaction的对象,我在ArrayQueue中传递它.

这是Transaction类构造函数(我也有适当的setter和getter):

public class Transaction {

    private int shares;
    private int price;

    public Transaction(int shares,int price) {
       this.shares = shares;
       this.price = price;
    }

    public Transaction(Object obj) {
       shares = obj.getShares();
       price = obj.getPrice();
    }
}

在第二个构造函数中,我想要一个场景,我可以在其中传递一个已经出列(ed)的不同Transaction对象,并从该事务中获取信息并将其转换为新事务或在我将其放回之前对其进行操作进入队列.但是当我编译它不喜欢这个.

这种可接受的编程习惯是将特定对象传递给它自己的对象的构造函数吗?或者这甚至可能吗?

最佳答案
您需要指定相同的类型:

public Transaction(Transaction obj) {
       shares = obj.getShares();
       price = obj.getPrice();
    }

前提是您已定义了getShares()和getPrice().

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...