Wymagana jest obejmująca instancja zawierająca
Poniżej znajduje się kod. positionObj
jest obiektem, którego próbuję użyć i daje mi powyższy błąd.
Nie jest jasne, dlaczego.
package toolBox;
import toolBox.Secretary.positionObj;
public class PositionManagement {
public static HashMap<String, Secretary.positionObj> main(String vArg){
positionObj newPosition=new positionObj();
}
}
Najpierw utwórz obiekt klasy Outer. W tym przypadku myślę „Sekretarz”. Następnie utwórz positionObj. Lubię to,
Secretary x = new Secretary(); Secretary.positionObj y = x.new positionObj();
źródło
Prawidłowy podpis ogólny to
public static HashMap<String, positionObj> main(String vArg)
nie musisz kwalifikować pozycji PositionObj, ponieważ już ją importujesz.
Jestem jednak pewien, że główna metoda musi być zgodna z podpisem poniżej. Jeśli chcesz, aby main był główną metodą twojego programu, zmień podpis na
public static void main(String[] args) {...}
możesz utworzyć oddzielną metodę statyczną, która zwraca Map i wywołuje ją z main.
Uwaga: wszystkie klasy powinny zaczynać się wielką literą, positionObj, powinno być PositionObj.
źródło