import java.io.*;
import java.lang.*;
import java.util.*; public class Test
{
public static void main(String args[])
{
TestTry tt=new TestTry(new String("123"));
TestTry tt1=new TestTry("147");
System.out.println("now Start!");
tt.isEmpty();
tt.playStE();
tt.distance("147");
tt.removeStE();
tt.distance("147");
System.out.println("This is the end!");
}
} class MyStack
{//用Vector类实现Stack类
protected Vector vt;
public MyStack()
{
vt=new Vector();
} public boolean isEmpty()
{//测试堆栈是否为空
return vt.isEmpty(); // boolean isEmpty() 测试此向量是否不包含组件
}
public Object peek()
{//查看栈顶对象而不移除它
return vt.lastElement();
}
public Object pop()
{//移除栈顶对象并作为此函数的值返回该对象
return vt.remove(vt.size()-1);
}
public void push(Object o)
{//把项压入栈顶
vt.addElement(o);
}
public int search(Object o)
{//返回对象在栈中的位置,以 1 为基数。
if(vt.isEmpty())
return vt.indexOf(o);
else
return -1;
}
} class TestTry extends MyStack
{
MyStack myst=new MyStack();
public void TestTry(Object o)
{
myst.push(o);
System.out.println("将对象"+o+"插入栈中");
} public void empty()
{
if(myst.isEmpty())
System.out.println("堆栈为空!");
else
System.out.println("堆栈长度为: "+myst.vt.size());
} public void playStE()
{
System.out.println("查看栈顶元素:"+myst.peek());
} public void removeStE()
{
System.out.println("移除栈顶元素:"+myst.pop());
} public void distance(Object o)
import java.lang.*;
import java.util.*; public class Test
{
public static void main(String args[])
{
TestTry tt=new TestTry(new String("123"));
TestTry tt1=new TestTry("147");
System.out.println("now Start!");
tt.isEmpty();
tt.playStE();
tt.distance("147");
tt.removeStE();
tt.distance("147");
System.out.println("This is the end!");
}
} class MyStack
{//用Vector类实现Stack类
protected Vector vt;
public MyStack()
{
vt=new Vector();
} public boolean isEmpty()
{//测试堆栈是否为空
return vt.isEmpty(); // boolean isEmpty() 测试此向量是否不包含组件
}
public Object peek()
{//查看栈顶对象而不移除它
return vt.lastElement();
}
public Object pop()
{//移除栈顶对象并作为此函数的值返回该对象
return vt.remove(vt.size()-1);
}
public void push(Object o)
{//把项压入栈顶
vt.addElement(o);
}
public int search(Object o)
{//返回对象在栈中的位置,以 1 为基数。
if(vt.isEmpty())
return vt.indexOf(o);
else
return -1;
}
} class TestTry extends MyStack
{
MyStack myst=new MyStack();
public void TestTry(Object o)
{
myst.push(o);
System.out.println("将对象"+o+"插入栈中");
} public void empty()
{
if(myst.isEmpty())
System.out.println("堆栈为空!");
else
System.out.println("堆栈长度为: "+myst.vt.size());
} public void playStE()
{
System.out.println("查看栈顶元素:"+myst.peek());
} public void removeStE()
{
System.out.println("移除栈顶元素:"+myst.pop());
} public void distance(Object o)
ps: TestTry 继承了 MyStack,为什么里面又要封装一个?
1)public void TestTry(Object o)是构造函数,不应该有返回值类型void申明;
2)方法public void distance(Object o)没有函数体