Java-final和static

final

  • 必须在构造对象时初始化
  • 修饰基本类型或者不可变的字段
  • 表示存储的对象引用不会指向其他对象,但是本身指向的对象可以改变

static

  • 将一个字段定义为static,每个类只有一个这样的字段
  • static定义的字段属于类,而不是对象

静态常量

  • final 、static

    e.g public static final double PI = 3.14159;
    
  • 静态常量的使用

    e.g System.out("123");  //其中out是Sytem类的静态常量
    

静态方法

  • 没有this参数的方法

    e.g Math.pow(x,a);  //计算出x的a次方,pow为Math类的静态方法,这里的pow和上面的out的区别在于pow                     //传入的参数会发生改变(计算),而out仅仅是一个打印流
    
  • 静态方法的调用

    • 对象名.方法名
    • 类名.方法名 (一般使用这个,因为静态方法属于类而不是对象)

你可能感兴趣的:(Java-final和static)