代码是我们每个学编程的小伙伴都接触的内容,在代码块的修改上有很多方法,那么在java中又需要使用哪种方式来对代码块进行变动呢?哦们最近在学关键字的版块,其中有一个static用来修饰代码块的效果非常不错。下面小编就它的特性、代码块介绍带来讲解,最后我们一起试着用static修改代码块。
1.特性static是一个修饰符,用于修饰成员。(成员变量,成员函数)static修饰的成员变量 称之为静态变量或类变量。
static修饰的成员被所有的对象共享。
static优先于对象存在,因为static的成员随着类的加载就已经存在。
static修饰的成员多了一种调用方式,可以直接被类名所调用,(类名.静态成员)。
static修饰的数据是共享数据,对象中的存储的是特有的数据。
2.代码块介绍:一块代码。以{}为范畴
(1)局部代码块,就是普通的代码块,{}。注意点:作用域
if语句:if(条件){。。。。}
if,for,while,do-while,switch-case。。。{}
(2)构造代码块:类里,方法外的代码块。
执行时机:当构造方法被调用的时候,构造代码块就执行。而且是优先于构造方法执行的。如果创建多个对象,就执行多次。
应用:可以为非静态的属性进行统一赋值。
(3)静态代码块:在代码块前加static关键字。
执行时机:初始化程序,只要类文件加载,静态代码块就会被执行。仅执行1次。在main函数之前执行。。
应用:可以为静态属性进行赋值。
(4)同步代码块:多线程
3.实例package com.qf.demo01_statci_;
public class Test1Static {
String name = "无名";//null
int age = 18;//0
static String city;
{
System.out.println("构造代码块。。。可以给成员属性统一赋值");
name = "无名";
age = 18;
}
static{
System.out.println("静态代码块了,只执行1次。。。。");
city = "武汉";
}
public Test1Static(){
System.out.println("构造方法。。。");
}
public static void main(String[] args) {
{
System.out.println("局部代码块,就是一块代码,注意作用域。。。");
int i = 30;
System.out.println(i);
}
// System.out.println(i);
/*
* if(){}
* if(){}else{}
* for(){}
* while(){}
* do{}while()
* swich(){case}
*/
int n = 10;
if(n > 0){//局部代码块。。注意作用域
System.out.println("n是正数。。。");
int a = 20;
System.out.println(a);
}
// System.out.println(a);//超出了作用域,无法使用
Test1Static t1 = new Test1Static();//调用构造方法,创建对象
Test1Static t2 = new Test1Static();
System.out.println(t1.name+","+t1.age);
System.out.println(t2.name +","+t2.age);
System.out.println(Test1Static.city);
}
}
以上就是static在java中修改代码块的方法,这里需要我们对static和代码块的内容一同了解,这样才能处理修改问题上得心应手,学会的小伙伴赶快尝试下吧。