2022-08-02 第二组 程梓杭 Java(12)static修饰符与代码块

学习内容:

  • static修饰符作用
  • static修饰符使用范围
  • 代码块

1、static修饰符作用

我们从语义的角度来看,static的意思是静态,而与静态对应的是动态。静态意味着相对的静止,这表示在static修饰下的事物应当相比于未由static修饰的事物应当更加“稳定”。
从Java编程的角度来看,static修饰下的内容不再属于对象,而是属于这个类,存储在方法区中是线程共享的。例如:有一个“人”类,小红和小明分别是这个类下的两个对象,“人”类中有一个static修饰下的年份(用于计算年龄)。当小红年龄增长一岁则小明年龄增长一岁,这个年份对于人类下全体对象是互通的。

2、static修饰符使用范围

static能修饰变量、方法和内部类。它们被称为:静态变量、静态方法和静态内部类.

3、代码块

代码块就是写在类体中的近似未命名无返回值无参数的方法,或者说仅有方法体的方法。由于没有名字,所以无法调用,仅能执行一次。
无static修饰时,称为实例代码块,与类下对象绑定,当有对象实例化时会执行一次。
有static修饰时,称为静态代码块或类代码块,在类被加载时执行一次。
通常来说,static在类下是从上到下执行。总的来说,先静态后实例,先父类后子类,先代码块后构造方法。严格按照上述顺序就不会乱套。

一些思考:

static和代码块运用的场景不在少数,同时总结在static和代码块的基础思想与static运用时刻和代码块运用时刻的意义能让理解更加深刻。
例如,上面没有提到的静态方法内不能直接使用非静态方法或变量,这在初学时常能遇见。

posted @ 2022-08-04 21:30  不觉已入梦  阅读(23)  评论(0编辑  收藏  举报