Java 找不到符号-方法滚动()

Java 找不到符号-方法滚动(),java,greenfoot,Java,Greenfoot,我正在使用一个简单的Mario侧滚动程序,当我尝试调用滚动对象的“scroll()方法时,我会抛出找不到符号-方法scroll()错误。请帮忙 这是子世界文件 import greenfoot.*; import java.util.ArrayList; /** * Write a description of class MarioWorld here. * * @author (your name) * @version (a version number or a pub

我正在使用一个简单的Mario侧滚动程序,当我尝试调用滚动对象的“scroll()方法时,我会抛出找不到符号-方法scroll()错误。请帮忙
这是子世界文件

import greenfoot.*;
import java.util.ArrayList;
/**
 * Write a description of class MarioWorld here.
 * 
 * @author (your name) 
 * @version (a version number or a 


public class MarioWorld extends World
{
    ArrayList<MovingActor> moving = new ArrayList<MovingActor>();
    ArrayList<Actor> things = new ArrayList<Actor>();
    Message messagebox = new Message("");
    /**
     * Constructor for objects of class MarioWorld.
     * 
     */
    public MarioWorld()
    {
        super(800, 600, 1);
        for(int i = 0; i < 40; i++)
            {
                things.add(new GreenApple());
                things.add(new Shamrock());

            }
            for(int i = 0; i<8;i++)
                things.add(new Brick());
            moving.add(new Mario());
            for(int r = 0;r < things.size();r++)
            {
                addObject(things.get(r),Greenfoot.getRandomNumber(800),Greenfoot.getRandomNumber(600));
            }
    }
    public void act()
    {

       for(int i = 0;i < things.size();i++)
            {
                things.get(i).scroll();
            }
            addObject(moving.get(0),15,300);
            moving.get(0).worldact();
    }


}
`
import greenfoot.*;

public interface Scrollable  
{
 public void scroll();
}

things
参与者的列表
Actor
不实现
Scollable
,但
Shamrock
实现
things.get(i)
返回没有
Scollable.scroll()的
Actor
。您需要将其转换为
三叶草
可折叠
。或者你可以将
事物
列为
三叶草

事物
列为
演员
Actor
不实现
Scollable
,但
Shamrock
实现
things.get(i)
返回没有
Scollable.scroll()的
Actor
。您需要将其转换为
三叶草
可折叠
。或者你可以把
things
列成
Shamrock
这里
moving
ArrayList
对象,而不是
Shamrock
,所以你只能用
moving
对象调用
ArrayList
类方法,比如
add()
remove()

这里ArrayList
是泛型类型安全的
ArrayList
。因此,您需要从arraylist中删除
对象
,然后只尝试应用方法
Scroll()`

使用此代码

((Shamrock)things.get(i)).scroll(); 

而不是
things.get(i.scroll()

此处
移动
数组列表
对象
,而不是
三叶草
,因此您只能使用
移动
对象调用
数组列表
类方法,如
添加()
删除()

这里ArrayList
是泛型类型安全的
ArrayList
。因此,您需要从arraylist中删除
对象
,然后只尝试应用方法
Scroll()`

使用此代码

((Shamrock)things.get(i)).scroll(); 

而不是
things.get(i.scroll()

我不会尝试回答,但我认为您可能需要显式强制转换,例如
((三叶草)things.get(I)).scroll()
actor是实现可滚动的类吗?我不会尝试回答,但我认为您可能必须显式地强制转换,例如
((三叶草)things.get(I)).scroll()参与者是tht实现的可滚动类吗?