区分成员变量和局部变量:
如果方法中定义了成员变量和局部变量,则方法中使用的是局部变量。若要使用成员变量则需要 this.成员变量;
例如:
class Tom{
int x=10;
void f()
{
int x=2;
y=x+this.x;
}
}
结果为12。
注意:成员变量有默认值,但局部变量没有。在局部变量使用的时候需给他一个具体值。
除了声明的时候能直接赋值,类中不能直接赋值,这样是非法的,赋值语句因该在方法体中出现
构造方法没有类型:无论是void还是int都不允许加在构造函数的前面
补充一点,char类型的变量直接输出的是内容而不是地址,要输出地址则需要并置运算,int类型的变量则不同,他直接输出的是地址,要输出数组的内容则要借助for循环
现在写一下关于实例方法 这方面的:
首先,实例变量和静态(类)变量的不同;
实例变量通过对象分配的存储空间不同,所以地址不同,改变了不会影响其他的;
类变量则与之相反;
实例方法与静态方法;
静态方法能被对象和类名调用,但实例方法只能被对象调用;
方法的重载:
在一个类中方法名相同,但参数不同的方法叫做方法的重载;
方法的重写:
在子类中方法与父类完全相同的情况下,对象调用的方法则是子类的重写方法,父类的方法则被隐藏;
注意:方法的重写不允许降低访问权限。
this 关键字:不能出现在静态方法中,能出现在实例方法和构造方法中;