คำถามติดแท็ก static-initialization

6
การกำหนดครั้งสุดท้ายไม่ดีหรือไม่?
ก่อนอื่นตัวต่อ: รหัสต่อไปนี้จะพิมพ์อะไร public class RecursiveStatic { public static void main(String[] args) { System.out.println(scale(5)); } private static final long X = scale(10); private static long scale(long value) { return X * value; } } ตอบ: 0 สปอยเลอร์ด้านล่าง หากคุณพิมพ์Xในขนาด (ยาว) และ Redefine X = scale(10) + 3พิมพ์จะได้รับแล้วX = 0 X = 3ซึ่งหมายความว่าXมีการตั้งค่าชั่วคราวและการตั้งค่าในภายหลัง0 …

13
Java: บล็อกการเริ่มต้นแบบคงที่มีประโยชน์เมื่อใด
อะไรคือความแตกต่างระหว่างการเริ่มต้นภายในstaticบล็อก: public class staticTest { static String s; static int n; static double d; static { s = "I'm static"; n = 500; d = 4000.0001; } ... และการเริ่มต้นแบบคงที่ของแต่ละบุคคล: public class staticTest { static String s = "I'm static"; static int n = 500; static double d = 4000.0001; ....
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.