Java之关键字、修饰符

static、final、abstract是重要的关键字、修饰符,能够为面向对象增加新的特性。

一、static关键字——静态的

特点:1)修饰的资源会在类加载时执行或初始化;

          2)成员可以通过类名直接调用

               Inerger.MAX-VALUE

               Math.random();

              AnimalFantory.getAnimal(1);

类加载:class load

当JVM第一次使用某个类时,会将其*.class文件读入JVM内存,存于code区,可以作为模板来创建对象,使用其方法。

 类加载的时机:

1)new Student();会加载Student类,只声明引用Studeng stu;不会加载;

2)类名.静态成员

     Arrays.sort(ds);会先加载Java.util .Arrys类,

补充:JVM启动时会提前加载java.lang下所有类;(Java.lang.String、Integer、Math...)

3)class.forName("day08.Animal");

     手动加载 day08.Animal类

      目的:就是为了加载一个类,类必须写全面。

 

JVM内存的三大区域:

1)栈区Stack:局部变量;

2)堆区Heap:对象;

3)方法区 Code:类的信息、静态资源;

 

1、static修饰属性

不加static:实例变量,每个对象(实例)拥有一份

加了static:类变量,整个类只有一份(对象共享一份)

 

在day09.sta包汇总新建TestStatic1.class

class Student{

int no; //学号

static int cno;  //班级号

}

 

posted @ 2023-08-08 00:09  漂浮的杜鹃花  阅读(19)  评论(0编辑  收藏  举报