final 与 static 的区别?
回答
当一个变量被声明为final时,它的值在初始化后不能被改变。对于引用类型,它指的是引用不可变,即不能再指向其他对象,但对象本身的状态可能改变。当方法被声明为final时,该方法不能被子类重写。当一个类被声明为final时,该类不能被继承。 当一个变量或方法被声明为static时,它属于类而非类的实例。静态变量在内存中只有一份,无论创建多少个类的实例,所有实例共享同一个静态变量。静态方法可以直接通过类名调用,无需创建类的实例。静态代码块在类加载时执行,通常用于系统初始化。 final关键字主要用于声明常量、防止继承和阻止方法重写,而static关键字主要用于实现与类相关联的变量和方法,以及控制类的初始化过程。
引用来自“来开源啊”的评论
当一个变量被声明为final时,它的值在初始化后不能被改变。对于引用类型,它指的是引用不可变,即不能再指向其他对象,但对象本身的状态可能改变。当方法被声明为final时,该方法不能被子类重写。当一个类被声明为final时,该类不能被继承。 当一个变量或方法被声明为static时,它属于类而非类的实例。静态变量在内存中只有一份,无论创建多少个类的实例,所有实例共享同一个静态变量。静态方法可以直接通过类名调用,无需创建类的实例。静态代码块在类加载时执行,通常用于系统初始化。 final关键字主要用于声明常量、防止继承和阻止方法重写,而static关键字主要用于实现与类相关联的变量和方法,以及控制类的初始化过程。
厉害😁
版权:言论仅代表个人观点,不代表官方立场。转载请注明出处:https://www.stntk.com/question/1125.html
还没有评论呢,快来抢沙发~