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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© gan 中级黑马   /  2015-5-8 22:38  /  677 人查看  /  18 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

static和final的用法区别是什么?

18 个回复

倒序浏览
简单一句话:主要看修饰的是什么样的变量(类,字段,方法)了哈,注意分析两个区中的各自特性就OK哈,static 是存在于方法区中,final存在于常量池中……
回复 使用道具 举报
static 是存在于方法区中,final存在于常量池
final修饰是常量,static修饰是被整个类对象共享
回复 使用道具 举报 1 0
崔小可 发表于 2015-5-9 00:05
static 是存在于方法区中,final存在于常量池
final修饰是常量,static修饰是被整个类对象共享 ...

解释的很到位!赞一个!
回复 使用道具 举报
final是一个关键字,可以用于修饰类,成员变量,成员方法。
        1、特点:
                它修饰的类不能被继承。
                它修饰的成员变量是一个常量。
                它修饰的成员方法是不能被子类重写的。

static关键字:可以修饰成员变量和成员方法。
        1、静态的特点:
                A:随着类的加载而加载
                B:优先于对象存在
                C:被类的所有对象共享
                D:可以通过类名调用
        2、静态的注意事项:
                A:在静态方法中是没有this关键字的。
                B:静态方法只能访问静态成员。
        3、静态内容的调用:
                A:被对象调用
                B:被类名调用
回复 使用道具 举报
static静态修饰的被整个类所共享,而final是最终的意思,而它修饰的是一个完是一个常量,
回复 使用道具 举报
gan 中级黑马 2015-5-9 10:26:14
7#
谢谢啦!
回复 使用道具 举报
adminlxb 发表于 2015-5-9 00:34
final是一个关键字,可以用于修饰类,成员变量,成员方法。
        1、特点:
                它修饰的类不能被继承。

很详细,谢谢分享
回复 使用道具 举报
static修饰的变量和方法,存在于方法区中,随着类的加载而加载,也就是在对象创建之前就有了,所以调用的时候可以用类名直接调用,而final修饰的变量的值是不能重新赋值的,即一个常量
回复 使用道具 举报
static静态修饰的被整个类所共享,而final是不可改变的意思,而它修饰的是一个完是一个常量,
回复 使用道具 举报
static 是存在于方法区中,final存在于常量池 final修饰是常量,static修饰是被整个类对象共享
回复 使用道具 举报
gan 中级黑马 2015-5-11 14:48:34
12#
谢谢各位帮助!
回复 使用道具 举报
adminlxb 发表于 2015-5-9 00:34
final是一个关键字,可以用于修饰类,成员变量,成员方法。
        1、特点:
                它修饰的类不能被继承。

很详细,学习了,谢谢分享。
回复 使用道具 举报
_hy 中级黑马 2015-5-11 15:48:53
14#
final是一个关键字,可以用于修饰类,成员变量,成员方法。
        1、特点:
                它修饰的类不能被继承。
                它修饰的成员变量是一个常量。
                它修饰的成员方法是不能被子类重写的。

static关键字:可以修饰成员变量和成员方法。
        1、静态的特点:
                A:随着类的加载而加载
                B:优先于对象存在
                C:被类的所有对象共享
                D:可以通过类名调用
        2、静态的注意事项:
                A:在静态方法中是没有this关键字的。
                B:静态方法只能访问静态成员。
        3、静态内容的调用:
                A:被对象调用
                B:被类名调用

又复习了一遍:)
回复 使用道具 举报
我自己的理解就是 static是在内存中开辟了一个空间单独给他留着 这是一个公共的空间,任何对象都可以访问他,而final字面理解就是最终的意思,意思就是用final关键字修饰以后这个字段是不可变的。当然修饰类就不能被继承啦。
回复 使用道具 举报
static修饰的东西是在方法区,随着类的加载而加载,只加载一次,而final字面理解是最终的意思,用它修饰的字段是不可变的,修饰的方法是不能被重写的。修饰的类是不能被继承的
回复 使用道具 举报
你知道吗!谁知道!?知道的告诉我!
回复 使用道具 举报
谁知道!请告诉我!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马