У меня возникли проблемы с доступом к методу в классе ItemType из Stack of ItemTypes.Доступ к методам ItemType в Stack
Мой класс ItemType очень просто
public class SteveItemType{
private String name;
public SteveItemType(String name){
this.name = name;
}
public String getName(){
return this.name;
}
}
Мой метод ToString из моего класса Stack:
public String toString(){
return stack[top].getName(); }
Это где скрывается моя ошибка. Я верю, Что хранится в моем стек не тип объекта (который отключив меня от доступа к моему методу GetName)
Моих Bounded Stack Конструкторы:
public ArrayStack(){
stack = (SteveItemType[]) new Object[default_cap]; }
public ArrayStack(int n){
stack = (SteveItemType[]) new Object[n]; }
Наконец в моем приложении, это то, как я я толкая мой ItemType & создавая свой стек:
ArrayStack stack = new ArrayStack<SteveItemType>(n);
stack.push(new SteveItemType("Steve"));
Моя ошибка является
> ArrayStack.java:59: error: cannot find symbol
> return stack[top].getName();
Пожалуйста, если кто-нибудь может объяснить, почему/где моя логика/мышление неправильны, я очень ценю это, мои извинения за все движущиеся части, которые я стараюсь сделать максимально точными.
(я не могу получить доступ к моему методу GetName)
Вы упустили много соответствующего кода. Где объявляется 'stack'? Что такое 'top'? – shmosel
'(SteveItemType []) new Object [default_cap]' должен вызывать 'ClassCastException'. – shmosel
Не могли бы вы разместить сообщение 'ArrayStack.java'? –