JAVA this VS static
1. this :代表对象,所在函数所属对象的引用
在定义功能时,如果该功能内部使用到了调用该功能的对象,这事就用this来表示这个对象
可以用于构造函数的调用 this (实际参数);
this.成员属性/成员方法:
this ():调用的是本类中对应参数的构造函数,必须定义在构造函数的第一行。
2. static:是一个修饰符,用于修饰成员变量和成员函数
1) 特点:
A: 实现对象中的共性数据的对象共享,可以将这个数据进行静态修饰
B:被静态修饰的成员可以直接被类名调用 :类名.静态方式
2)弊端
A:被静态修饰的数据会变成是对象共享的数据。
B: 静态方法只能访问静态成员,不可以访问非静态成员。
C:静态成员不能使用this, super关键字
D:主函数的静态的
3, 何时使用静态修饰
A:成员变量: 看该成员变量的数据是够是所有对象都一样
Yes:该变量需要被静态修饰,因为是共享数据
No:那就是对象特有数据,要存储到对象中
B:成员函数:方法中没有调用特有数据时就定义为静态
4.成员变量和静态变量的区别:
1) 成员变量是所属于对象, 也成为实例变量
静态变量所属于类,也成为类变量
2) 成员变量存在于堆内存,随着对象的创建而存在,随着对象的回收而消失
静态变量存在于方法区中。随着类的加载而存在,随着类的消失而消失
静态的生命周期很长
静态代码块:就是一个由静态关键字标示的一个代码块区域,可以完成类的初始化,随着类的加载而执行,而且只执行一次,如果跟主函数在同一个类,优先于主函数执行。
posted on 2013-07-03 11:53 Jane_study 阅读(255) 评论(0) 编辑 收藏 举报