A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Sniper-L 中级黑马   /  2015-10-13 21:56  /  473 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

java 中final和static关键字说明

final
fianl关键字可以修饰类、方法和变量。
a. 修饰类
final修饰的类,该类没有子类,该类不能被继承。
b. 修饰方法
final可以修饰方法。final修饰的方法不能被重写(Override)。
c. 修饰变量
final修饰的变量,是一个常量,且只能被赋值 一次,可以是成员变量和局部变量。

static
a. static用于修饰成员,可以是成员变量和成员方法。
b. 被static修饰后的成员,可以直接被类调用。 类名.静态成员
c. 随着类的加载而加载,随着类的消失而消失。类一加载,就有静态成员,比对象先存在。静态成员生命周期长。
d. 被所有对象所共有。
e. 静态变量(也就是类变量)存在于方法区中,非静态变量(实例对象)存在于堆内存中。
f. 静态方法只能调用静态成员。(因为静态成员优先于对象存在,在静态方法生成时,非静态的成员还没有存在,故不能调用非静态的)
g. 静态方法中不能使用this super关键字。因为this super代表对象,对象还没有存在。
h. 静态优点:对对象的共享数据进行单独空间的存储,节省空间。缺点,生命周期过长,访问有局限性。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马