2012-09-11 55 views
0

我想从另一个类访问私有最终静态双。从另一个类访问私有最终静态双

这里是类:

public class coolMath{ 

private final static double alpha = 5.87; 

public coolMath(){ 

} 

public static double calDistance(double x1, double y1, double x2, double y2){ 
     double dist = Math.sqrt(Math.pow((x2-x1), 2) + Math.pow((y2-y1),2));  
     return dist; 
    } 

} 

我需要访问的变量α的另一个类。这可能吗?在构造函数中是否需要发生某些事情以使其可用?有任何想法吗?

+0

你不是想改变Math.PI或你是什么? – arshajii

回答

2

要么将​​alpha设为公共字段,要么提供返回它的public static double getAlpha()

如果您将该字段设为公开,您可以像double a = coolMath.alpha那样访问该字段。

否则,double a = coolMath.getAlpha();

我强烈建议你去通过Java修饰符一次。

+0

好吧,公开它,误读我的Java书。我怎样才能访问它?我试过MyMath.alpha,但它不是一种方法,以及只是尝试阿尔法。 – ZAX

+0

'coolMath.alpha'应该可以正常工作。由于你的字段是静态的,我假设你不想在'coolMath'的实例中访问它?只是一句话:按照惯例Java类名以大写字母开头。 – Pao

0

这在技术上可以通过一些深奥的反射方法来实现,但我非常反感。最好是改变你的变量的可见性或者写一些返回它的方法(或者设置它,如果你还需要的话(但是如果你的变量是final))。

相关问题