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. Python中使用超長的List導致內存占用過大2. 實現bing搜索工具urlAPI提交3. python - Django有哪些成功項目?4. Python從URL中提取域名5. MySQL主鍵沖突時的更新操作和替換操作在功能上有什么差別(如圖)6. 關于mysql聯合查詢一對多的顯示結果問題7. node.js - windows10下的npm全局路徑的復原或者將npm徹底刪除?8. 數據庫 - Mysql的存儲過程真的是個坑!求助下面的存儲過程哪里錯啦,實在是找不到哪里的問題了。9. 直接打字符不可以嗎?>和>有區別嗎10. node.js - 微信小程序websocket連接問題
