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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 1384588560 中级黑马   /  2015-9-25 00:54  /  671 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

final关键字有什么特点,和static有哪些区别?

3 个回复

倒序浏览
霓裳独舞 来自手机 中级黑马 2015-9-25 01:09:17
沙发
还没有学到那里耶!!!!!
回复 使用道具 举报
final修饰一个类时,表明这个类不能被继承。一个类你一直不想让他被继承,就可以用final进行修饰。final类中的成员变量可以根据需要设为final,但注意final类中的所有成员方法都会被隐式地指定为final()。

static用来修饰成员变量和成员方法,也可以形成静态static代码块。它修饰的成员变量和成员方法一般称为静态变量和静态方法,可以直接通过类名来访问。

static和final一起使用
对于变量,一旦给值就不可更改,可通过类名可以访问。
对于方法,不可覆盖,可以通过类名直接访问。
回复 使用道具 举报
  static关键字
                特点:
                        (1): 随着类的加载而加载
                        (2): 优先于对象存在
                        (3): 被类的所有的对象所共享
                        (4): 可以通过类名调用.本身也可以通过对象名调用
                                 建议使用类名调用
                注意事项:
                        (1): 在静态的方法中不能存在this关键字
                        (2): 静态只能访问静态

  final关键字

                特点:
                        final(最终的)
                        修饰类                                被修饰的类不能被继承
                        修饰变量                        被修饰的变量其实是一个常量

                                                                引用类型                指的是地址值不能被改变
                                                                基本类型                指定是值不能被改变
                        修饰方法                        被修饰的方法不能被子类重写
               
                final的初始化时机问题:
                        a: 只能被赋值一次
                        b: 在构造方法结束前赋上值就OK了(非静态的)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马