main()方法使用说明
- 作为程序的入口
- 作为一个普通的方法
public class demo{
public static void main(String[] args) {
main.main(new String[]{"a","b","c"});
}
}
class main{
public static void main(String[] args) {
for (int i=0;i<args.length;i++){
System.out.println(args[i]);
}
}
}
- 作为与控制台的交互方式
代码块
- 用来初始化类、对象
- 静态代码块
随着类的加载而执行,而且只执行一次
static {
System.out.println("static block");
}
- 非静态代码块
随着对象的创建而执行,每创建一个对象就执行一次
{
System.out.println("static block");
}
对象可赋值位置
- 默认初始化
- 显示初始化
- 构造器初始化
- 通过 "对象.属性"或"对象.方法"的方式赋值
- 在代码块中赋值
执行的先后顺序:1—>2/5—>3—>4
final关键字
final可以用来修饰类、方法、变量
- final用来修饰类
public class demo {
}
final class finall{
}
class a extends finall{
//无法继承
}
此类不能被其他类所继承,比如String类、System类、StringBuffer类
- final用来修饰方法
public class demo {
}
class b{
final void f(){
}
}
class a extends b{
void f(){
//无法重写方法
}
}
此方法不可以被重写,比如Object类中getClass方法
- final用来修饰变量
public class demo {
final int num = 10;
public void changenum(int num){
this.num = num; //无法修改
}
}
此"变量"就成为是一个常量
final修饰属性:可以考虑赋值的位置有:显示初始化、代码块中初始化、构造器中初始化
final修饰局部变量:用final修饰形参时,表明此形参是一个常量。当我们调用此方法时,给常量形参传递一个实参,一旦赋值后,就只能在方法体内使用此形参,不能重新赋值