慕少1317773
2020-04-16 16:44
是不是有了 Static 就不可以用this 了?
个人理解:
成员变量->对象->类 所以通过this访问对象再调用成员变量
静态变量->类 中间没有对象这一级,所以直接调用,不能有this
static修饰的静态方法中不能使用this, this关键字它的值是当前对象的引用.
用它来调用属于当前对象的方法
或者使用this处理方法中版成员变量和局部变量重名的情况.
而static修饰的静态方法、成员变量是属于一个类的,而不是某一个对象,this找不到具体的对象
1.成员内部类通过:外部类类名.this.外部类中的成员属性,来访问外部类中与内部类同名的成员变量
不能直接:外部类类名.外部类中的成员属性,因为非静态属性不能通过类名直接访问
2.静态内部类通过:外部类类名.外部类中的成员属性,访问外部类中的静态成员属性
通过:new 外部类名().非静态成员属性,访问外部类中的非静态方法
本人自己的观点,如果有不足或者错误欢迎大佬批评指正
Java入门第二季 升级版
530562 学习 · 6091 问题
相似问题