一般的访问权限修饰符:public、protected、private、默认,对class修饰一般用public 、默认,一个源文件中只能有一个public修饰的类,
static 静态的,static修饰的变量成为静态变量,是共享的,和static修饰的同名的变量,无论哪一个改变,其他的也会改变,一般静态实例变量,都用类名直接调用,静态方法也是一样的。
this:表示的是一个一个的实例,不能再静态方法中使用,在成员变量与局部变量也可以重名,这就需要用到this关键字,this.stuId=stuId;
对于静态方法在调用时,不需要用new,直接可以用类名调用,一般工具类的方法都设为静态方法。
class Student{
private String name;
static String subject;
public class Demo1{
public static void main(String[] args){
Student stu02 = new Student();
stu02.subject = "计算机科学与技术系";
Student.subject = "软件工程"; //建议使用类名直接调用
初始化
初始化字段:静态变量初始化,1、在静态代码块ststic{ }大括号中,
static{
System.out.println("这里是静态代码块");
count = 5;
}2、使用私有静态方法。
实例变量初始化:非静态代码块直接用{ },在大括号中进行初始化,
{
System.out.println("这里是非静态初始化块。age:" + age);
if(age<16)
age = 16;
System.out.println("非静态初始化结束。age:" + age);
}
在程序执行过程中,执行-字段->静态代码块——>私有字段——》非静态代码断——》构造器;
构造器在new创建实例的时候,才调用执行。初始化快{ }中的代码,会被复制在每一个构造器的开始。
对于常量常用static final 定义:static final PI;