深入理解final和static关键字 参考:http://blog.csdn.net/qq1028951741/article/details/53418852 final关键字 final关键字可以应用于类.方法以及变量. final声明变量 final声明变量可以保证在构造器函数返回之前,这个变量的值已经被设置.详细可以看final声明的重排序规则.分为三种情况: final声明基本数据类型变量:该变量只能被赋值一次,赋值后值不再改变. final声明引用数据类型变量:final只保证这个…
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/8482909.html 一.概述 final是Java关键字中最常见之一,表示“最终的,不可更改”之意,在Java中也正是这个意思. 有final修饰的内容,就会变得与众不同,它们会变成终极存在,其内容成为固定的存在. finally关键字不同于final关键字,这是一个需要与异常体系结构配合使用的关键字,旨在定义必须要进行操作,一般用于在发生异常的时候进行一些收尾操作. 二.final作…
final和abstract关键字的作用 final和abstract是功能相反的两个关键字,可以对比记忆 abstract可以用来修饰类和方法,不能用来修饰属性和构造方法:使用abstract修饰的类是抽象类,需要被继承,使用abstract修饰的方法是抽象方法,需要子类被重写. final可以用来修饰类.方法和属性,不能修饰构造方法.使用final修饰的类不能被继承,使用final修饰的方法不能被重写,使用final修饰的变量的值不能被修改,所以就成了常量. 特别注意:final修饰基本类型…
一.main函数详解 1.public:公共的.权限是最大的,在任何情况都可以访问  原因:为了保证jvm在任何情况下都可以访问到main法2.static:静态,静态可以让jvm调用更方便,不需要用对象调用3.void:没有返回值.因为返回的数据是给jvm,而jvm使用这个数据是没有意义的,所有就不要了4.main:函数名, 注意:main方法并不是关键字,只不过是jvm唯一识别的一个特殊函数名5.arguments(args):担心某些程序启动时需要参数. class Demo1 { pub…
this关键字的作用 1.this是对象内部指代自身的引用,同时也是解决成员变量和局部变量同名问题: 2.this可以调用成员变量,不能调用局部变量: 3.this也可以调用成员方法,但在普通方法中可以省略this,在构造方法中不允许省略,必须是构造方法的第一条语句.而且在静态方法中不允许出现this关键字. super关键字的作用 1.super代表对当前对象的直接父类对象的引用: 2.super可以调用直接父类的成员变量(注意权限修饰符的影响,比如不能访问private成员): 3.supe…
回顾这两个关键字前,先考虑一个问题: Static变量存储在JVM中的位置,或者说static变量是如何被加载的? JVM会把类的静态方法和静态变量在类加载的过程中读入方法区(Method Area),相当于常驻内存,如果一个方法或者变量声明为static,可以节约内存,不必要为每个对象实例化的时候分配内存. >>final关键字 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.final类不能被继承,没有子类,f…
一.final        根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.你可能出于两种理解而需要阻止改变:设计或效率.         final类不能被继承,没有子类,final类中的方法默认是final的.        final方法不能被子类的方法覆盖,但可以被继承.        final成员变量表示常量,只能被赋值一次,赋值后值不再改变.        final不能用于修饰构造方法.      …
一.final        根据程序上下文环境,它可以修饰非抽象类.非抽象类成员方法和变量.         final类不能被继承,没有子类,final类中的方法默认是final的.        final方法不能被子类的方法覆盖,但可以被继承.        final成员变量表示常量,只能被赋值一次,赋值后值不再改变.        final不能用于修饰构造方法.        注意:父类的private成员方法是不能被子类方法覆盖的,因此private类型的方法默认是final类型…
个人通俗理解: 1.final:首先被final修饰的变量就自动变成的不能被修改的常量了.被修饰的类会自动变成太监类,只能有父类,不能有子类:被修饰的方法也不能被子类重写了:被修饰的引用变量值也不能更改了地址值了:但在修饰成员变量前必须赋值(可以使用构造方法,因为构造方法时初始化的,最早执行的). 2.static:可以理解为static是用于将对象或者方法中的相同的东西提取出来进行静态下,在定义类的时候一并定义了,需要注意的是:它是属于类的,不是某个对象的,是早于对象存在的,存在在静态区的(不…
在最近看书的过程中,常常遇到static.final.this这三个关键字,不是很明白它们的使用,查阅资料结合实例做了如下总结: 一.static——无需创建对象就可以调用(方法.属性). 1.静态变量:static修饰的属性,称为类属性,即全局变量.前面已经有提及. (1).静态变量可以使用类名直接访问,也可以使用对象名进行访问. class Number { int a; static int b; } public class T01 { public static void main(S…