java中静态代码块有什么用?java中静态代码块 static的作用
大家好,如果您还对java中静态代码块有什么用不太了解,没有关系,今天就由本站为大家分享java中静态代码块有什么用的知识,包括java中静态代码块 static的作用的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
java中静态代码块 static的作用
Java静态代码块的作用:Java静态代码块中的代码会在类加载JVM时运行,且只被执行一次,也就是说这些代码不需要实例化类就能够被调用。一般情况下,如果有些代码必须在项目启动的时候就执行的时候,就需要使用静态代码块。
Java静态代码块的用法:一个类可以使用不包含在任何方法体中的静态代码块,当类被载入时,静态代码块被执行,且只被执行一次,静态块常用来执行类属性的初始化。例如:
static
{
int a=0;
}
JAVA中 静态块的作用
如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的.静态方法在类加载的时候就已经加载可以用类名直接调用
。
与非静态代码区别:
静态代码块,在虚拟机加载类的时候就会加载执行,而且只执行一次;
非静态代码块,在创建对象的时候(即new一个对象的时候)执行,每次创建对象都会执行一次
例:
//普通类
public class PuTong{
public PuTong(){
System.out.print("默认构造方法!-->");
}
//非静态代码块
{
System.out.print("非静态代码块!-->");
}
//静态代码块
static{
System.out.print("静态代码块!-->");
}
public static void test(){
{
System.out.println("普通方法中的代码块!");
}
}
}
扩展资料:
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性。
参考资料:百度百科-网页链接
JAVA 静态代码块和非静态代码块 作用
静态代码块是在类加载进jvm时类实例化之前运行的,比如业务场景有这种类初始化时需要加载许多资源,在运行实例化类的时候会影响程序响应时间,所以就在项目启动的时候加载类的时候就初始化了.非静态代码块是在类实例化的时候才会运行,所以静态代码块的执行一定在非静态代码块执行之前执行.至于你上面的第一个问题要看具体业务场景和需求,赋值都可以实现.第二个问题,可能是写那句代码的人要看程序加载后有没有执行那部分代码而加上的,知道了静态代码块和非静态代码块的本质区别,为什么那么做和目的你就应该知道了.
java中,什么时候要用到静态语句块,它有何作用呢
一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的.静态方法在类加载的时候就已经加载可以用类名直接调用
比如main方法就必须是静态的这是程序入口
两者的区别就是:静态代码块是自动执行的;
静态方法是被调用的时候才执行的.
静态方法
(1)在Java里,可以定义一个不需要创建对象的方法,这种方法就是静态方法。要实现这样的效果,只需要在类中定义的方法前加上static关键字。例如:
public static int maximum(int n1,int n2)
使用类的静态方法时,注意:
a在静态方法里只能直接调用同类中其他的静态成员(包括变量和方法),而不能直接访问类中的非静态成员。这是因为,对于非静态的方法和变量,需要先创建类的实例对象后才可使用,而静态方法在使用前不用创建任何对象。
b静态方法不能以任何方式引用this和super关键字,因为静态方法在使用前不用创建任何实例对象,当静态方法调用时,this所引用的对象根本没有产生。
(2)静态变量是属于整个类的变量而不是属于某个对象的。注意不能把任何方法体内的变量声明为静态,例如:
fun()
{
static int i=0;//非法。
}
(3)一个类可以使用不包含在任何方法体中的静态代码块,当类被载入时,静态代码块被执行,且只被执行一次,静态块常用来执行类属性的初始化。例如:
static
{
}
好了,文章到这里就结束啦,如果本次分享的java中静态代码块有什么用和java中静态代码块 static的作用问题对您有所帮助,还望关注下本站哦!