012Java static和final
来源:互联网 发布:数据英文单词 编辑:程序博客网 时间:2024/05/17 02:53
static和final
1.1static修饰的成员变量:static修饰的成员变量,不是对象的数据结构,而是类的变量,一般通过类名来调用静态成员,成员变量存储在堆中,而静态成员存储在方法区中,一个静态成员变量在一个类中只有一份
main方法声明
内存结构
由上面三图的, 当创建c1后numOfCats加1,当创建 c2后,由于numOfCats只有一份,因而在此基础上由加一,numOfCats值为2
1.2通常方法涉及到对象的调用时,又有该对象隐式的引用(this)传递给方法,如图下:
而static修饰的方法没有隐式的this调用,因为static修饰的方法不涉及具体对象的调用,因此也不能访问非静态成员,(因为没有this)如图下:
1.3static块
static块在类加载时,被执行一次,仅且执行一次,用于加载静态资源如图下:
运行结果为:Load Foo.class
Foo()
以上结果为静态块在类创建之前已经被运行
2final关键字
2.1 final修饰变量:指不可以改变的变量 ,求有如下规则
final修饰的成员变量:必须声明的同时进行初始化或者通过构造函数进行初始化
final修饰的局部变量:在使用在前初始化就行了
由上图得,no被final修饰,不可以被改变,而不可以被重新赋值。
2.2final修饰的方法
final修饰的方法不可以被重写,用于钢制子类调用新方法时,造成的重写。
2.3final修饰的类不可以继承,用于防止子类继承父类
2.4static final 常量
static final修饰的成员变量被称为常量,必须声明的同时进行初始化,常量在编译器被替换,如图下:
- 012Java static和final
- java-static和final
- JAVA中的final 和 static final
- 【java】final和final static的区别
- JAVA中的final 和 static final
- Java关键字final和static
- java 关键字final 和 static
- java 关键字final 和 static
- java语法:final和static
- java语法:final和static
- Java关键字static和final
- Java 关键字static和final
- java中的static和final
- java中的static和final
- java中的static和final
- java中的static和final
- java中的static和final
- java中static和final
- 【PS教程】钢笔(路径)终极教程
- 用光驱启动到远程连接安装
- 2014 node.js小结
- android开发环境配置
- 利用Python进行数据分析--绘图和可视化
- 012Java static和final
- ios xmpp开发应用后台模式接收聊天信息
- 向量表示,投影,协方差矩阵,PCA
- 【阅读】《head first jquery》第七章——定制函数提供定制效果(完善变脸小项目)
- UVA 10602
- 我眼中的信息安全
- 关联性
- 《数据结构》实验二:线性表实验(上)
- linux GPMC驱动调试笔记