class Price
{
//类成员是Price实例
final static Price INSTANCE = new Price(2.8);
//在定义一个类变量。
static double initPrice = 20;
//定义该Price的currentPrice实例变量
double currentPrice;
public Price(double discount)
{
//根据静态变量计算实例变量
currentPrice = initPrice - discount;
}
}
public class PriceTest
{
public static void main(String[] args)
{
//通过Price的INSTANCE访问currentPrice实例变量
System.out.println(Price.INSTANCE.currentPrice); //①
//显式创建Price实例
Price p = new Price(2.8);
//通过先是创建的Price实例访问currentPrice实例变量
System.out.println(p.currentPrice); //②
}
}
两个结果打印出来的为什么不一样? |
|