stackserializable.java
来自「Java面向对象编程(随书配套源代码) 阐述了面向对象编程的思想」· Java 代码 · 共 54 行
JAVA
54 行
package chapter11;
import java.io.Serializable;
import java.util.Vector;
import chapter7.*;
public class StackSerializable <T extends Animal & Serializable>
{
private int stackSize = 100; //设置栈的大小
Vector <T> stack = new Vector<T>();
public StackSerializable (int size)
{
stack.setSize(size);
}
//压栈
public boolean push(T o)
{
if(stack.size() >= stackSize)
{
System.out.println("栈溢出");
return false;
}
else
{
return stack.add(o);
}
}
//出栈
public T pop()
{
if(!isEmpty())
{
T o = stack.lastElement();
stack.remove(o);
return o;
}
else
{
System.out.println("栈空");
return null;
}
}
//判定栈是否为空
public boolean isEmpty()
{
return stack.isEmpty();
}
public static void main(String args[])
{
//StackSerializable <Duck> duck = new StackSerializable<Duck>(10);
//边界不匹配,类型Duck并不是类型StackSerializable<T>的有界参数<T extends Animal & Serializable>的有效替代项
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?