Java中怎样初始化变量,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
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函数中第一次输出是200,第二次是300,这是因为第一次调用的是默认构造函数,而类中的变量在之前已经初始化,而构造函数并不能改变变量的值所以变量值是初始化框里的200,第二次调用了带参数的构造函数,构造函数直接将值返回,就算构造函数在前输出的值也一样都是300.
2.如何在静态方法中调用非静态方法和字段
package treat;public class treat { public int dg=0; void fun() { System.out.println("hello world!!"); } static void play(treat a)//通过形参传递对象实现非静态方法的调用 { a.fun(); a.dg=8;//调用对象改变非静态字段的值 System.out.println(a.dg); } public static void main(String args[]) { treat a=new treat(); treat.play(a); }}
在上面的程序中可以发现可以通过形参传递对象的方法来调用非静态方法和字段。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。