问题来自<a target=_blank href="http://bbs.itheima.com/thread-177842-1-1.html">点击打开链接</a>
---------------------------------------------程序1------------------------------------------------
public class PriceTest {
public static void main(String[] args) {
//输出位置1
System.out.println(Price.INSTANCE.currentPrice);
Price p = new Price(2.8);
//输出位置2
System.out.println(p.currentPrice);
}
}
class Price {
public Price(double discount) {
currentPrice = initPrie - discount;
}
static final Price INSTANCE = new Price(2.8);
static double initPrie = 20;
double currentPrice;
}
问题一:请问程序1两个位置的输出一样吗?为什么?
-------------------------------------------华丽分割线-----------------------------------
----------------------------------------------程序2--------------------------------
public class PriceTest {
public static void main(String[] args) {
//输出位置1
System.out.println(Price.INSTANCE.currentPrice);
Price p = new Price(2.8);
//输出位置2
System.out.println(p.currentPrice);
}
}
class Price {
public Price(double discount) {
currentPrice = initPrie - discount;
}
static final Price INSTANCE = new Price(2.8);
static final double initPrie = 20;
double currentPrice;
}
问题二:请问程序2两个位置的输出一样吗?为什么?