java - 創建變量沒有輸出??
問題描述
class Car{ int num; String color; public static void run() {System.out.println('行駛'); }}class Demo99 { public static void main(String[] args) { Car baoma = new Car();
//這這兒為什么需要使用baoma.run();這個語句才有輸出呢?//下面的代碼不需要引用函數就可以得到輸出了
}}
這個代碼沒有輸出這是為什么呢??下面這個代碼
public class CodeBlock02{ { System.out.println('第一代碼塊');}public CodeBlock02(){System.out.println('構造方法');}{ System.out.println('第二構造塊');} public static void main(String[] args){ CodeBlock02 acv = new CodeBlock02(); //或者用這個都有輸出 new CodeBlock02();}}
問題解答
回答1:new 會去調用構造方法,
public class Demo{public Demo(){ System.out.println('demo');} } public class Run{public Run(){}public void print(){ System.out.println('run');}
如果你使用了new Demo 這個時候會去調用Demo()這個構造方法也就是會輸出。但是new run()不會,因為構造方法沒有調用輸出語句,要輸出需要去調用print()方法。
回答2:第二個輸出的是“第一代碼塊”吧?
回答3:你要理解這幾個概念:
構造方法
靜態方法
實例方法
代碼塊
了解了這幾個, 你就想明白了
相關文章:
1. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。2. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變3. html5 - 有可以一次性把所有 css外部樣式轉為html標簽內style=" "的方法嗎?4. javascript - 有什么比較好的網頁版shell前端組件?5. java - 如何寫一個intellij-idea插件,實現編譯時修改源代碼的目的6. javascript - 原生canvas中如何獲取到觸摸事件的canvas內坐標?7. java 中Long 類型如何轉換成Double?8. javascript - 求解答:實例對象調用constructor,此時constructor內的this的指向?9. html - vue項目中用到了elementUI問題10. javascript - [js]為什么畫布里不出現圖片呢?在線等
