从arraylist调用子类方法

时间:2012-04-06 00:09:57

标签: java methods arraylist subclass superclass

我有一个名为dvdToRent的子类,在类中有一个名为dvdRental的方法,我想直接从名为dvdCompany的arrayList中调用

public void dvdRental (int dvdNumber, String customer)
{         

    if (dvds.size() < 0) {
       System.out.println("Empty list");
       }
       else if (dvdNumber >= dvds.size()) {
           System.out.println("Doesn't exist!!");
        }
    else {

        dvd  = dvds.get(dvdNumber);
        dvdToRent.dvdrental(customer);
    } 
}

多数民众赞成我想的可能它可以调用方法,但事实并非如此,它在最后一行给我一个错误。有什么建议?提前谢谢!

2 个答案:

答案 0 :(得分:1)

您无法直接从List调用方法,因为List是对象的集合。您必须选择此集合中的一个特定元素。

例如:

dvdToRent.get(0).dvdrental(customer);

这将获取名为dvdToRent的List中的第一个元素,然后使用此元素使用参数customer调用dvdrental。

答案 1 :(得分:1)

假设dvd被声明为dvdToRent,看起来你想要你的最后一行是

dvd.dvdrental(customer);

而不是

dvdToRent.dvdrental(customer);