block块 { }
定义在方法中{}为局部代码块,调用该方法就执行
定义在类中方法外,构造块,当new一个对象便加载
static {}定义类中方法外,静态代码块,在类第一次加载的时候就执行一次,进行初始化
同步代码块
当存在多个相同的,执行顺序为从上到下
this关键字(谁调用它就代表哪个对象)
this代表指向的对象
用法:在出现同名的变量时,this.属性代指成员属性
int a;
public Ss(int a){
this.a=a;
}
this可以在构造函数在调用其他的构造函数,this()要位于首行
public Ss(int a){
this.a=a;
}
public Ss(int a,int b){
this(a);
this.b=b;
}
注意:this不能和static出现在同一个方法中
this调用其他构造函数时要位于首行
构造器直接不能有两个this相互调用
static关键字(静态修饰符)
static{ 静态代码块}
作用,为本类做统一的初始化
所在的类中,对象创建多少次他就会被调用多少次
static修饰方法(静态方法)
可以被直接调用,但是它不能直接调用非静态方法,需要创建对象来调用或者类名.方法名
static修饰成员(静态成员)
初始化操作,可以直接被调用,它在当前类new对象的时候执行
类名.属性名 对象名.属性名
GC
Garbage Conllection(垃圾回收机制)
1.程序员无权调用垃圾回收器
2.程序员可以通过System.gc()通知GC运行,但是Java规范不能保证它在第一时间就运行
3.finalize方法,是Java提供给程序员的
new Person(); //可以回收
Person p=new Person(); //当p代表对象时,不可回收,
p=null;//可以回收
package包
package语句作为Java源文件的第一句,它指明该文件定义的类所在的包
注:不要取和jdk下相同的包名
import 导包
当你需要调用jdk下面的类中方法或者属性,需要用import
import java.util.Scanner;
java.util.Scanner s = new java.util.Scanner(System.in);