Java变量的初始化及静态方法的实现
这篇文章主要介绍了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);
}
}

在上面的程序中可以发现可以通过形参传递对象的方法来调用非静态方法和字段。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
只需两步实现Eclipse+Maven快速构建第一个Spring Boot项目
这篇文章主要介绍了只需两步实现Eclipse+Maven快速构建第一个Spring Boot项目,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-12-12
SpringBoot Redis 发布订阅模式(Pub/Sub)的具体使用
本文主要介绍了SpringBoot Redis 发布订阅模式(Pub/Sub)的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-12-12
Spring Boot 的java -jar命令启动原理详解
这篇文章主要介绍了Spring Boot 的java -jar命令启动原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-01-01
Spring MVC中@Controller和@RequestMapping注解使用
这篇文章主要介绍了Spring MVC中@Controller和@RequestMapping注解使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-02-02
IDEA2019.2.2配置Maven3.6.2打开出现Unable to import Maven project
这篇文章主要介绍了IDEA2019.2.2配置Maven3.6.2打开出现Unable to import Maven project,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-12-12


最新评论