/*
类的组成;
成员变量;
构造方法:
成员方法:
考虑一下,类的组成部分的各自关系
继承中的成员变量的关系
A:子类中的成员变量和父类中的成员变量名称不一样
B:子类中的成员变量和父类中的成员变量名称一样
子类方法中方访问一个变量的查找顺序(就近原则)
a;在子类方法的局部范围找,有就使用
b;在子类的成员范围找,有就使用
c;在父类的成员范围找,有就使用
d;如果找不到,就报错
*/
class Father{
public int num = 10;
public int num1 = 20;//第三
}
class Son extends Father{
public int num2 = 30;//第二
public void show(){
int num = 40;//第一
System.out.println(num);
System.out.println(num2);
}
}
class Dome{
public static void main(String[] args){
//创建变量
Son s = new Son();
s.show();
}
}
/*
问题:
1.我不仅仅要输出局部变范围的num,还有输出本类的成员范围的num。
使用this ,this表示当前类的变量
2.我还想还想输出父类成员范围的num,但是可以直接访问父类的数据
有一个关键字和this相似,但是可以直接访问父类的数据
这个关键字是, super
this和super的区别?
this代表本类对应的引用
super代表父类存储空间的标识(可以理解为父类的引用,可以操作父类的成员)
super的使用
A:调用成员变量
this.成员变量 调用本类的成员变量
super.成员变量 调用父类的成员变量
B:调用构造方法
this(...) 调用本类的构造方法
super(...) 调用父类的构造方法
C:调用成员方法
this.成员方法 调用本类的成员方法
super.成员方法 调用父类的成员方法
*/
class Father{
public int num = 10;
}
class Son extends Father{
public int num = 20;
public void show(){
int num = 30;
System.out.println(super.num);
System.out.println(this.num);
}
}
class Dome{
public static void main(String[] args){
//创建变量
Son s = new Son();
s.show();
}
}
Java类的组成,成员变量,构造方法,成员方法
最新推荐文章于 2023-09-07 21:47:41 发布