认识Java第八天(下)——Static关键字

Static关键字

关于static关键字的使用,它可以修饰成员变量和成员方法,被修饰的成员称为类成员。
而不单单属于某一个对象,也就是说,既然属于类,就可以不创建对象去使用。

定义和使用格式:

类变量:

当static修饰成员变量的时候,该变量称为类变量,该类的每一个对象都共享同一个类变量的值,任何的对象可以改变这个类变量,但是也可以在不创建对象的情况对类变量进行操作。
类变量:使用static关键字修饰的成员变量
static 数据类型 变量名;
static int numberId;
比如我们的开新班,学员来报到,现在想为每一个学生报到的时候为学生编号,从第一个同学开始,sid1,依次类推,学号是唯一的一个值,连续的。

public class Student {
private String name;
private int age;
private  int sid;
private  static  int number=0;
public  Student(String name,int age){
    this.name=name;
    this.age=age;
    this.sid=++number;
}
public void show(){
    System.out.println("student:name="+name+",age="+age+",sid="+sid);
}
}
public class test08 {
    public static void main(String[] args) {
        Student student=new Student("张三",18);
        student.show();
        Student student1=new Student("王五",20);
        student1.show();
    }
}

静态方法:

当static修饰成员方法的时候,该方法成为类方法,静态方法在申明的时候有static,建议使用类名来调用,而不需要创建类的对象,调用方式非常简单。
格式:
其实就是在定义方法的时候,在返回值类型前面加static关键字即可
修饰符 static 返回值类型 方法名(参数列表){
方法体
}
public static void showNum(){
System.out.println(“num:”+number);
}
静态方法调用注意事项:
1、静态方法可以直接访问类变量和静态方法,非静态方法中可以直接访问静态成员和非静态成员
2、静态方法不能直接访问普通的成员方法,反过来,我们成员方法可以在直接访问静态方法。静态方法中只能直接访问静态成员,不能直接访问非静态成员
3、静态方法中,不能是用this关键字
4、静态成员:包含静态成员变量和静态成员方法。非静态成员:包含非静态成员变量和非静态成员方法

静态代码块:

静态代码块:定义在成员变量的位置,使用static关键字修饰的代码块
格式:static{ 代码块 }
执行:随着类的加载而执行且执行一次,优先于main方法和构造方法。第一次使用类的使用就会加载该类,并且只会加载一次
作用:给类变量进行初始化赋值
位置:类中方法外

import java.util.ArrayList;
public class test09 {
    public static int number;
    public static ArrayList<String> list;
    static {
        number=2;
        list=new ArrayList<>();
        list.add("212");
        list.add("123");
    }
}
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值