作者nesk (大棵)
看板java
標題[問題] 寫stack程式所發生的問題
時間Tue Aug 24 20:43:33 2010
FullLessStack.java
package example.practice;
public class FullLessStack {
LinkData top=null;
public int isEmpty()
{
if(top==null)
{
return 1;
}
return -1;
}
public void push(int pushData) throws StackFullException
{
LinkData push=new LinkData();
push.setData(pushData);
push.before=top;
top.next=push;
top=push;
}
public int pop() throws StackEmptyException
{
int popData;
if(isEmpty()==1)
{
throw new StackEmptyException();
}
popData=top.getData();
top=top.before;
return popData;
}
}
class StackFullException extends Exception { }
class StackEmptyException extends Exception { }
LinkData.java
package example.practice;
class LinkData {
LinkData next,before;
int data=0;
public void setData(int input)
{
LinkData.data=input;
這邊有錯
Cannot make a static reference to the non-static field LinkData.data
}
public int getData()
{
int popData=0;
popData=LinkData.data;
這邊有錯
Cannot make a static reference to the non-static field LinkData.data
return popData;
}
}
本成是主要有想要做一個除非記憶體被吃光不然不會滿的stack
我對任何變數都沒有宣告static可是不知為啥
會出上面的錯誤訊息 請各位大大幫幫忙
或是有人對此程式能給我一些意見
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.243.14.102
→ ogamenewbie:請你解釋一下有錯的那一行在幹麻, 然後程式碼解說的 08/24 21:18
→ ogamenewbie:的部份用註解 08/24 21:19
→ a761007:this.data 08/24 21:37
→ a761007:錯誤訊息很清楚的告訴你問題了 data非靜態你沒辦法這樣用 08/24 21:40
→ nesk:上面的錯誤是做Linkdata資料的設定 08/24 21:46
→ nesk:感謝您一說我才發現 我還以為是哪個變數或韓氏被偷設成靜態 08/24 21:49