main主方法:
class Main {
public static void main(String[] args) { //new String[0]
//int[] arr = new arr[0];
//String[] args = new String[0];
System.out.println(args.length); //args可以修改和上面一样就行
main(); //完整写法为Main.main();
}
public static void main() { //主方法重载
System.out.println("111111111111");
}
}
主方法解释:
- public被jvm调用,访问权限足够大
- static被jvm调用,不用创建对象,直接类名访问
- void被jvm调用,不需要给jvm返回值
- main一个通用的名称,不是关键字,但是被jvm识别
- String[] args以前用于接受键盘录入数据,现在不用了
当一个类中所有的方法都是静态的,需要再多做一步,将构造方法私有private 类名(){},目的是不让其他类创建本对象。
math类:
- 在java.long包下,所以不需要导包
- 获取随机数的方法:public static double random():返回带正号的double值,该值大于等于0.0,小于1.0
- 获取一个1~100之间的随机数:int number = (int)(Math.random()*100) + 1;
注:视频P181、190习题练习
局部代码块:方法中{}单独括起来的部分,限定变量的生命周期,节约内存,用完就释放内存,开发中基本不用。
构造代码块:在类中方法外{}括起来的部分,随着对象的创建而执行,优先于构造方法执行,开发很少用,当对象具备相同的属性或相同的行为就需要在每个构造函数中定义相同的属性或行为,这太麻烦,都在构造代码块中定义即可。
静态代码块:在构造代码块前面加个static {},随着类的加载而加载,只执行一次。静态代码块优先于主方法执行,与位置无关,不是自上而下执行。用于加载驱动。