Um deine Frage zu beantworten: Die Methode "List GetObjectsAt(int x, int y, Class c)" ist das was du suchst. Sie liefert zu einer gegebenen Position und Klasse eine Lister aller zutreffenden Objekte. Mit anderen Worten:
GetObjectsAt(x,y,Stein.class) liefert eine Liste aller Objekte der Klasse Stein, die sich an der Position (x|y) befinden. Was du nun machen willst ist überprüfen ob sich an einer Stelle überhaupt ein Stein befindet. Was du hierfür machen kannst ist zu prüfen ob:
if(GetObjectsAt(x,y,Stein.class).size() > 0) {...}
Damit kannst du also prüfen ob sich an einer gegebenen Stelle ein Stein befindet. Wenn du jetzt einen Fisch platzieren willst sofern kein Stein da ist tust du folgendes:
if(getObjectsAt(x,y,Stein.class).size() > 0) { addObjectAt(x,y, new Fisch()); }
Hoffe ich konnte helfen.
PS: Beim nächsten Mal wenn du eine Frage stellst, liefere alle relevanten Informationen gleich mit: Sprache, Framework (in diesem Fall Greenfoot), relevante Code-Schnipsel... Und antworte nicht auf deine eigene Frage um weitere Informationen zu liefern, sondern editier sie lieber. Falls du noch weitere Fragen zu Greenfoot/Java hast, kannst du mir eine PM schreiben und ich schau ob ich die Zeit finde