aspose file tools*
The moose likes Beginning Java and the fly likes Need Help Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Need Help" Watch "Need Help" New topic
Author

Need Help

luk Hann
Ranch Hand

Joined: Jan 29, 2001
Posts: 48
Hi,
To calculate standard deviation, I wrote the following program:
import java.lang.Math.*;
public class StandTest {
public static void main(String args[]) {
Stat record = new Stat();
record.addValue(2);
try {
System.out.println("Standard Deviation is" + Math.sqrt());
} catch (Exception e) {
System.out.println("Exception" + e.getMessage());
}
}
}

import java.lang.Math.*;
public class Stand {
private int N;
private double S;
private double S1;
private double SoS;
public void addValue(double d) {S +=d; S1 = (d*d); SoS+=S1; N++;}
public static double Math.sqrt() throws Exception {
if (N < 0) {
throw new Exception("negative value is not allowed");
}
return ((N*SoS)-(S*S))/(N*(N-1));}
}
When I complied it, two error messages:
Stand.java:9: ';' expected
public static double Math.sqrt() throws Exception {
^
StandTest.java:12: sqrt(double) in java.lang.Math cannot be applied to () System.out.println("Standard Deviation is" + Math.sqrt());
Why? Thanks.
luk

Val Dra
Ranch Hand

Joined: Jan 26, 2001
Posts: 439
If i am wrong someone will correct me on this , But if class is final it's methods are final implicitly. Math class is final therefore you can't overwrite it's sqrt Method plus if i am wrong on this too sqrt takes a parameter which value to take square of. Let me feel the heat


Val SCJP <BR>going for SCJD
Val Dra
Ranch Hand

Joined: Jan 26, 2001
Posts: 439
also static methods may not be overriden , i checked and sqrt method takes a value as a parameter of double.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Need Help