this、static关键字
一.this关键字
this表示当前对象的指针,指向当前对象,表示当前对象的引用
this存储位置:对象在new时会在堆中申请空间,this存储在该内存空间中,用来指代当前对象本身,可以理解为指向当前对象的首地址
用处:
构造方法中:当构造方法中的参数名称跟类的成员变量名称一样的时候可以用this指代当前对象
普通方法中:当多个普通方法之间需要调用的时候可以使用this进行调用,指的是当前对象的其他方法
成员变量:当方法中参数名称与成员变量一致时,使用this.变量名称表示的是对象的值,而使用变量名称表示的是形参列表中的值
二.static关键字
static修饰成员变量的时候,表示静态成员变量或者类变量
普通变量在使用的时候,必须通过对象名进行调用
类变量或者静态变量可以使用对象名进行调用也可以使用类名进行调用
修饰方法的时候,表示静态方法或者叫类方法
普通方法在使用的时候,必须要通过对象名进行调用
类方法或者静态方法可以使用类名. (打点),也可以使用对象名
注意:
1.静态变量在创建对象之前必须初始化,或者说在类被载入之前进行初始化
2.静态变量被所有的对象共享,属于公共变量,对象和类都可以直接调用,但是推荐使用类来调用
3.普通变量放在堆中,而静态变量放在方法区中静态区
4.静态变量不能定义在静态方法中
5.静态方法可以在非静态方法中进行调用,静态方法中不能直接调用非静态方法
6.静态方法中不允许出现this调用和super调用
作者:http://cnblogs.com/lyc-code/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权力。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步