1.static关键字
- 含义: 中文的叫法“静态”. 主要是修饰属性,修饰方法,修饰类(内部类)
- 如果被static关键字所修饰的属性,方法,类。则它们内存空间是全局共享
- 如果被static关键字所修饰的属性或方法,则在程序执行过程可以通过类名打点调用属性,方法
1 ublic class StaticSample { 2 static int a; 3 static void m01() { 4 } 5 public static void main(String[] args) { 6 StaticSample.a = 10; 7 StaticSample.m01(); 8 } 9 }
- 如果被static关键字所修饰的属性,则此属性中存储值的变化会影响其他对象的使用
1 package com.gxa.day10; 2 3 public class StaticSample { 4 static int a; 5 int b; 6 7 public static void main(String[] args) { 8 StaticSample ss1 = new StaticSample(); 9 StaticSample ss2 = new StaticSample(); 10 11 ss1.a = 100; 12 ss1.b = 100; 13 System.out.println("ss2.a = " + ss2.a); 14 System.out.println("ss2.b = " + ss2.b); 15 } 16 }
- 静态关键字static可以修饰一个语句块
1 package com.gxa.day10; 2 3 public class StaticSample { 4 static int a; 5 int b; 6 static { //静态关键字修饰的语句块, 优先于构造方法先执行 7 System.out.println("===静态代码块==="); 8 } 9 10 { //非静态代码块 11 System.out.println("===非静态代码块==="); 12 } 13 14 public StaticSample() { 15 System.out.println("===构造方法==="); 16 } 17 18 public static void main(String[] args) { 19 new StaticSample(); 20 } 21 }
2.final关键字
- 含义:final关键字可以修饰属性,方法,类
- final关键字属性, 则属性就是一个常量, 是常量值则对象是不能对其存储的值进行修改
- final关键字方法, 此方法不能被重写
- fianl关键字修饰类,此类不能被继承
1 package com.gxa.day10; 2 3 public final class FinalSample { // FinalSample不能被继承 4 final int a = 100; //常量, 存储的值是不能修改的 5 final void m01() {} //方法是不能被子类重写 6 }
浙公网安备 33010602011771号