arrays—arraylist对象在java中被重写

xoshrz7s  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(215)

关闭。这个问题需要细节或清晰。它目前不接受答案。
**想改进这个问题吗?**通过编辑这个帖子来添加细节并澄清问题。

三小时前关门了。
改进这个问题
我正在尝试从父对象继承多个对象的方法。但是,对象将被覆盖。是否有方法停止覆盖对象并保存上一个值。
这就是我尝试过的。
下面是我的getters和setters或model类。

public class ItemProduct {

    private int itemProduct;
    private String name;
    private float price;

    public int getItemProduct() {
        return itemProduct;
    }

    public void setItemProduct(int itemProduct) {
        this.itemProduct = itemProduct;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public float getPrice() {
        return price;
    }

    public void setPrice(float price) {
        this.price = price;
    }

}

下面是我的主要类:为了您的理解,我将输出的解释写成comments system.out.println(d.getitemproduct().getname())-这是覆盖的行。我想打印所有的对象,但我得到的是最后一个对象。如果有什么办法,请帮助我。

import java.util.ArrayList;
import java.util.List;

public class Main {

    public static void main(String[] args) {

        List<ItemProduct> L1= new ArrayList<>();

        ItemProduct ob1=new ItemProduct();
        ItemProduct ob2=new ItemProduct();

        ob1.setItemProduct(1);
        ob1.setName("Name1");
        ob1.setPrice(35);

        ob2.setItemProduct(2);
        ob2.setName("Name2");
        ob2.setPrice(37);

        L1.add(ob1);
        L1.add(ob2);

        for(ItemProduct c:L1)
        System.out.println(c.getName());  //Output Name1, Name2

        List<OrderedItem> L2 =new ArrayList<>();

OrderedItem orderObject= new OrderedItem();

orderObject.setItemProduct(ob1);
orderObject.setItemProduct(ob2); 

for(OrderedItem d:L2)
System.out.println(d.getItemProduct().getName());  // Output-Name2-I expect Name1 and Name2 as output-but the object is overwritten.

    }

}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题