关于Final,static, 数组
2011-08-05 00:21
225 查看
本文是Java常见面试系列
final 用在三个地方: 变量,方法,类, 当用在类上,表示当前是一个终态类,不能被继承,不能有子类;当用在方法上,表示方法不能被重写(override);当用在变量上时,表示是一个终态变量,一旦赋值就不能改变
对于final类型的成员变量,在不加static 的初始化方式:
1. 声明变量时直接赋值
2. 在构造方法中完成赋值,如果一个类有多个构造方法,就要保证在每个构造方法中都要完成赋值
如果变量 static final 修饰, 在声明变量时,要求必须初始化
对于final 修饰的引用类型变量,不能改变的是引用,一个示例:
public class Zgct
{
public static final StringBuffer s = new StringBuffer();
public static void main(String[] args)
{
// s.append("hello"); // 编译正确
s = new StringBuffer(); //编译报错
}
}
final 用在三个地方: 变量,方法,类, 当用在类上,表示当前是一个终态类,不能被继承,不能有子类;当用在方法上,表示方法不能被重写(override);当用在变量上时,表示是一个终态变量,一旦赋值就不能改变
对于final类型的成员变量,在不加static 的初始化方式:
1. 声明变量时直接赋值
2. 在构造方法中完成赋值,如果一个类有多个构造方法,就要保证在每个构造方法中都要完成赋值
如果变量 static final 修饰, 在声明变量时,要求必须初始化
对于final 修饰的引用类型变量,不能改变的是引用,一个示例:
public class Zgct
{
public static final StringBuffer s = new StringBuffer();
public static void main(String[] args)
{
// s.append("hello"); // 编译正确
s = new StringBuffer(); //编译报错
}
}
相关文章推荐
- 关于java中的static 与 final
- 关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- 关于static和final修饰类的属性变量以及变量的初始化
- 关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- java实体类中关于private static final long serialVersionUID = 1L的知识点
- 原创 关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- 关于Java中public static final int 的用法
- 关于java 中面试中经常问到的static、final的常识
- 关于java中的static和final
- 关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- 关于static abstract final synchronized
- 关于static与final 一起用需要注意的问题
- (转)关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- 关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- 关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
- 关于Java中public static final int 用法的解答
- [转]关于 "the serializable class XXX does not declare a static final seriaVersionUID..."的问题 (2012-03-1
- 关于JAVA中的static和final修饰符的一点总结
- Java 中关于static和final用法小结
- 关于static静态的、继承、接口interface、final关键字、单例设计模式总结