特征修饰符

介绍

static(静态的)

static特征修饰符
static keyword in java.


final(最终的)

final特征修饰符


abstract(抽象的)

abstract特征修饰符
Abstract Class in Java


native(本地的)

到native以后就看不到源码了,执行过程是用别的语言写的

  • eg:Object 中的 hashCode

transient(瞬时的)


什么是可见性问题?

volatile(可见的)

synchronized(同步的)


public static final synchronized abstract 的顺序问题

(1)public static final synchronized 可以混用 且 顺序不限

(2)abstract 只能与public或protected连用,不能与default,private,static,final,synchronized中的任意一个连用;

原因分析:
default:default会限定子类的范围,使用受限;
private:abstract 是为了用来让子类继承的,子类不能继承父类 private 方法,组合矛盾;
static:是编译期绑定且一定存在具体的实现。抽象方法没具体实现,他俩本身就存在矛盾;
final:final本身就是阻止重写的,abstract肯定需要被改的,组合矛盾;
synchronized:synchronized没有继承性,父类加锁子类默认不加锁 ,所以加了synchtonizd;也没用


参考

static final public synchronized abstract 的顺序问题

你可能感兴趣的:(基础知识,java,jvm,开发语言)