谁能告诉我它们到底有什么区别
public static final int a = 1;
public static int a = 1;
public final int a = 1;
先不用去管它们的权限!
------解决方案--------------------static修饰表示的是类成员变量,也就是说属于类,即所有对象共有的,不属于哪一个对象
final修饰表示常量,不能修改它的值,你可以尝试在代码中修改它,会报错
大概就是这样,这两个关键词组合,你去理解吧
------解决方案--------------------static 修饰表示类成员变量,即变量为所有对象共有;
final 修饰表示变量不可修改,这个从它字面的意思也可看成,相当于C++中的const;
static final 表示不可修改的类成员变量
------解决方案--------------------static表示类成员。final表示最终的,用于(成员,方法,类...)
------解决方案--------------------这里面最主要就是理解两个关键字:static 和final: static表示在类加载器加载时就初始化该变量,final修饰int类型表示这个a不允许被赋值,修饰类表示这个类不能被继承。
------解决方案--------------------final 修饰常量,其值是不可变的。
static 静态,main方法就是static修饰的。当然static也可以修饰类,属性,变量。
static final 静态常量,全局通用。
共同学习。
------解决方案--------------------static修饰的属性和方法,可以直接通过类来调用,
final修饰的属性与方法,是终态的,不可以被改变,
static final不可修改的成员变量,这样的用法很常见