Java變量的初始化及靜態(tài)方法的實現(xiàn)
這篇文章主要介紹了Java變量的初始化及靜態(tài)方法的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
1.變量初始化
package treat; class InitializeBlockClass { public int field=100; { field=200; } public InitializeBlockClass(int value) { this.field=value; } public InitializeBlockClass() { } } public class treat { public static void main(String args[]) { InitializeBlockClass obj=new InitializeBlockClass(); System.out.println(obj.field); obj=new InitializeBlockClass(300); System.out.println(obj.field); } }
在main函數(shù)中第一次輸出是200,第二次是300,這是因為第一次調(diào)用的是默認構造函數(shù),而類中的變量在之前已經(jīng)初始化,而構造函數(shù)并不能改變變量的值所以變量值是初始化框里的200,第二次調(diào)用了帶參數(shù)的構造函數(shù),構造函數(shù)直接將值返回,就算構造函數(shù)在前輸出的值也一樣都是300.
2.如何在靜態(tài)方法中調(diào)用非靜態(tài)方法和字段
package treat; public class treat { public int dg=0; void fun() { System.out.println("hello world!!"); } static void play(treat a)//通過形參傳遞對象實現(xiàn)非靜態(tài)方法的調(diào)用 { a.fun(); a.dg=8;//調(diào)用對象改變非靜態(tài)字段的值 System.out.println(a.dg); } public static void main(String args[]) { treat a=new treat(); treat.play(a); } }
在上面的程序中可以發(fā)現(xiàn)可以通過形參傳遞對象的方法來調(diào)用非靜態(tài)方法和字段。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Java多線程的調(diào)度_動力節(jié)點Java學院整理
有多個線程,如何控制它們執(zhí)行的先后次序呢?下文給大家分享四種方法及java多線程調(diào)度的實例代碼,需要的朋友參考下吧2017-05-05