回顾Java中被遗忘的细节(五)
来源:互联网 发布:网络音乐最新排行榜 编辑:程序博客网 时间:2024/06/07 23:37
凡是用final关键字修饰的变量或者方法或者类,都表示这是最后的一个节点了,修饰的类,不能被继承,修饰的方法不能被重写,修饰的变量是一个常量,只能初始化一次,常见的是在定义的时候给出变量值,或者是在构造方法里面赋值,当用final修饰局部变量的时候,如果该变量是基本数据类型,则其值为一个常量不能再改变,若是一个引用类型的则地址值不能发生改变,但是对象的内容--->>即地址指向的对象是可以改变的
static关键字是静态的意思。可以修饰成员变量和成员方法。静态修饰的变量或者方法的特点:都是随着类的加载而加载,并优先于对象存在,且被类的所有对象共享。而这其实也是我们判断该不该使用静态的依据。建议通过类名调用。静态需要注意在静态方法中没有this对象而且静态只能访问静态
静态变量和成员变量的区别
所属不同
静态变量:属于类,类变量
成员变量:属于对象,对象变量,实例变量
内存位置不同
静态变量:方法区的静态区
成员变量:堆内存
生命周期不同
静态变量:静态变量是随着类的加载而加载,随着类的消失而消失
成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失
调用不同
静态变量:可以通过对象名调用,也可以通过类名调用
成员变量:只能通过对象名调用
static关键字是静态的意思。可以修饰成员变量和成员方法。静态修饰的变量或者方法的特点:都是随着类的加载而加载,并优先于对象存在,且被类的所有对象共享。而这其实也是我们判断该不该使用静态的依据。建议通过类名调用。静态需要注意在静态方法中没有this对象而且静态只能访问静态
静态变量和成员变量的区别
所属不同
静态变量:属于类,类变量
成员变量:属于对象,对象变量,实例变量
内存位置不同
静态变量:方法区的静态区
成员变量:堆内存
生命周期不同
静态变量:静态变量是随着类的加载而加载,随着类的消失而消失
成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失
调用不同
静态变量:可以通过对象名调用,也可以通过类名调用
成员变量:只能通过对象名调用
代码块指用{}括起来的代码。分为局部代码块----->>>用于限定变量的生命周期,及早释放,提高内存利用率。构造代码块----->>>把多个构造方法中相同的代码可以放到这里,每个构造方法执行前,首先执行构造代码块。静态代码块----->>>对类的数据进行初始化,仅仅只执行一次。其中,静态代码块是最先执行,构造代码块紧随其后,最后才是构造方法
0 0
- 回顾Java中被遗忘的细节(五)
- 回顾Java中被遗忘的细节(一)
- 回顾Java中被遗忘的细节(二)
- 回顾Java中被遗忘的细节(三)
- 回顾Java中被遗忘的细节(四)
- 被遗忘的java
- jdk中开发时,被我遗忘的细节知识记录
- 盘点那些不曾被遗忘的细节设计
- 被遗忘的网站页面优化细节点
- Java中一些容易遗忘的语法
- 关于C++继承的一些遗忘细节
- php中 被遗忘的函数
- php中 被遗忘的函数
- php中 被遗忘的函数
- php中被遗忘的函数
- ES6 中被遗忘的孤岛
- Java里被遗忘的角落
- 被遗忘的技术点---JAVA
- Oracle Database PL/SQL Packages and Types Reference
- Visual studio 调用libpq++ 出现 #error directive: "Oops: min() and/or max() are defined as preprocessor m
- GDB 常用命令总结
- 3.24任务
- spark mllib 应用程序开发及提交到spark集群运行--入门
- 回顾Java中被遗忘的细节(五)
- Git在项目协同开发中的简单使用
- 使用详解及源码解析Android中的Adapter、BaseAdapter、ArrayAdapter、SimpleAdapter和SimpleCursorAdapter
- DES算法的matlab实现
- 求四个数的最大公约数
- c++中的基础概念
- 获取Windows操作系统版本
- 微信网页版协议的java封装
- 倒计时时钟