2016-02-24 6 views
-1

J'écris un code supposé appeler une méthode shipItem() pour deux objets dans un tableau. Voici le code que j'ai jusqu'à présent pour cette section spécifique:Appel d'une autre méthode d'une classe différente

Object[] shoppingCart = new Object[3]; 
    shoppingCart[0]=comp1; 
    shoppingCart[1]=comp2; 
    System.out.println("\n"); 
for(Object x : shoppingCart){ 
    System.out.println(x); 
    System.out.print(shipItem); 

Dans une autre classe, j'ai ce code pour la méthode shipItem:

public String shipItem() 
    { 
    if(isInStock == true) 
    { 
    return "Your item has been shipped."; 
    } 
    else 
    { 
    return "Your item is currently out of stock, it will ship when it is back in stock"; 
    }} 

Quand je lance le programme que j'obtiens une erreur me dit que "shipItem ne peut pas être résolu en une variable" et j'ai essayé de résoudre cela moi-même, mais je n'arrive pas à trouver un moyen de le résoudre. Toute aide serait grandement appréciée.

Merci.

+0

Vous devez nous fournir plus d'informations pour répondre. Avez-vous fait de la première classe une sous-classe de la première classe? – JackVanier

+0

Non cette classe est dans son propre fichier de coureur ... Ceci est seulement une partie de l'ensemble du programme, mais je voulais voir pourquoi cela ne fonctionnait pas ou comment je peux l'appeler pour travailler. –

Répondre

0

Vous n'avez défini aucun élément shipItem. Si vous voulez appeler la méthode shipItem, utilisez shipItem().

Utilisez

System.out.print(shipItem()); 
+0

Lorsque j'ai essayé de le faire, il m'a donné l'erreur que "La méthode shipItem() n'est pas définie pour le type DeviceDriver". DeviceDriver est le fichier runner d'une autre classe. Merci d'avoir essayé de m'aider cependant. –

+0

Qu'est-ce que comp1 et comp2. Sont-ils objet de DeviceDriver. Si oui, appelez la méthode shipItem() sur l'objet –