作者sweetjp6 (水餃)
看板java
標題[問題] 不定長度引數造成的overflow
時間Tue Sep 13 11:56:28 2011
目前在練習不定常數引數的使用方法,
但照著書本打之後發現會出現
Exception in thread "main" java.lang.StackOverflowError
google過後發現有可能是過度呼叫函數的問題,
但小弟一直看不出哪裡有重複呼叫,不知道是不是可以麻煩版友們指點一下
小弟謝先!!!!
//////////////////////////////
class Calculator {
double price;
Calculator(double price) {
this.price = price;
}
double CalculatePrice(Land l) {
return l.area() * price;
}
double totalPrice(Land... Lands) {
double total = 0;
for (Land l : Lands) {
* total += totalPrice(l); //問題出現在此
}
return total;
}
}
public class poly {
public static void main(String[] argv) {
Circle c = new Circle(5);
Square s = new Square(5);
Calculator ca = new Calculator(3000.0);
System.out.println("總價值:" + // 使用匿名陣列
ca.totalPrice(new Land[]{c,s}));
}
////////////////////////////
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.164.141
→ asilzheng:recursive的中斷點沒設好?? 09/13 12:38
推 LPH66:雖然是樓上的問題沒錯 但根本原因是原PO呼叫錯函式了 09/13 12:54
推 LPH66:給原PO的提示: CalculatePrice 一個人在那邊有點孤單喔 XD 09/13 12:57
→ sweetjp6:原來如此,是我眼殘了。謝謝樓上兩位大大的提醒~ 09/13 13:38