final,static,const在使用上有什么区别?


网上找到的,保留了 JAVA中final、staticfinal:final修饰类:该类不可继承 final修饰方法:该方法不能被子类覆盖(但它不能修饰构造函数) final修饰字段属性:属性值第一次初始化后不能被修改 使用final可以提高程序执行的效率,将一个方法设成final后编译器就可以把对那个方法的所有调用燃睁都置入嵌入调用里。 static:static修饰成员函数则皮塌岁该函数不能使用this对象 static不能修饰构造函数、函数参数、局部成员变量 static修饰成员字段则当类被虚拟机加载时按照声明先后顺序对static成员字段进行初始化。 static修饰语句块:当类被虚拟机加载时按照声明先后顺序初始化static成员字段和static语句块 static所修饰的方法和字段只属于类,所有对象共享,java不能直接定义全局变量,是通过static来实现的。 java中没有const,不能直接定义常衫森量,是通过static final组合来实现的。 C#中readonly、const readonly、const是c#中的两种常量 readonly:为运行时常量,程序运行时进行赋值,赋值完成后便无法更改,也称为只读变量。 const:为编译时常量,程序编译时将对常量值进行解析,并将所有常量引用替换为相应值。