public class Stack { private Object[] elementsofstack; private int size = 0; public Stack(int capacity) { elementsofstack = new Object[capacity]; } public void push(T item) { int lengthofstack = elementsofstack.length; if (size == lengthofstack) { System.out.println("Stack is full!"); return; } //size= size +1; elementsofstack[size] = item; size = size + 1; } public T pop() { if (isempty()) { System.out.println("Stack is empty!"); return null; } size= size - 1; return (T) elementsofstack[size]; } public boolean isempty() { if(size == 0) { return true; } else if(size<=0) { System.out.println("there might be issue!\n>size value:"+size); return false; } else { return false; } } public Object[] getElements() { return elementsofstack; } public int getSize() { //System.out.println("used getSize func.\n>size value:"+size); return size; } }