[英]java public static final object
下面的代碼,包含文件是這里
public abstract class Quart extends TweenEquation {
public static final Quart IN = new Quart() {
@Override
public final float compute(float t) {
return t*t*t*t;
}
...
如果我在運行的應用程序中的某個地方調用Quart.IN.compute(0.5f)(例如,在每秒調用60次的render()函數中),是否在每次調用時都創建了一個新的Quart,還是只是分配了一次?
這是有道理的,對吧?
謝謝,干杯
根據定義,最終變量只能分配一次。 加載該類時,將初始化該類的靜態字段。 因此很明顯, IN
Quart實例僅創建一次。
它只是分配一次
是的,您總是在同一對象上調用compute
方法。
就一次。 靜態字段IN在首次訪問Quart類時初始化。
您還可以通過在創建Quart實例時寫入輸出來檢查它僅創建一次:
public abstract class Quart extends TweenEquation {
public static final Quart IN = new Quart() {
{ System.out.println("created"); }
@Override
public final float compute(float t) {
return t*t*t*t;
}
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.