day09-继承中super和this的综合使用

This commit is contained in:
2026-01-22 16:12:04 +08:00
parent d285432c36
commit 6be4882289
2 changed files with 77 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
package com.inmind.this_super05;
public class Fu {
int num = 100;//父类的成员变量
public void methodFu1() {
System.out.println("这是父类的成员方法");
}
public void methodFu2() {
System.out.println("这是父类的成员方法");
}
}

View File

@@ -0,0 +1,65 @@
package com.inmind.this_super05;
/*
this表示本类super表示父类
super三个使用操作
1.super,可以在子类的成员方法中访问父类的成员变量格式super.父类成员变量
2.super,可以在子类的成员方法中访问父类的成员方法格式super.父类成员方法名(参数列表)
3.super,可以在子类的构造方法中访问父类的构造方法格式super(参数列表)
-----------------------------------------------------------
this关键字使用方式
1.this,可以区分当前类中局部变量和成员变量
2.this,可以在本类的成员方法中,调用该类的其他的成员方法(其实在一个类中所有的成员变量和成员方法的调用之前都有this.)
3.this,可以在本类的构造方法中,调用其他的重载构造方法
关于第三点的注意事项:
a.this必须在第一行不能调用自己构造方法自己不能调用自己
b.this和super在调用构造方法时都必须在第一行所以在一个构造方法中不能同时出现
c.this可以调用其他的重载构造方法但是不能互相调用死循环
*/
public class Zi extends Fu{
int num = 10;
int num1 ;
//无参构造
public Zi(){
this(10);
// System.out.println("默认的初始化操作100行代码");
}
//有参构造
public Zi(int num){
/*System.out.println("默认的初始化操作100行代码");
this.num = num;*/
this(num, 0);
}
//满参构造
public Zi(int num,int num1){
super();
System.out.println("默认的初始化操作100行代码");
this.num = num;
this.num1 = num1;
}
//子类的成员方法
public void method(){
//this();
//super();//只有构造方法中才能通过super访问父类的构造方法
System.out.println(super.num);
super.methodFu1();
super.methodFu2();
int num = 20;
System.out.println(num);//局部变量 20
System.out.println(this.num);//成员变量10
method1();
this.method2();//成员方法
}
//子类的成员方法
public void method1(){
}
//子类的成员方法
public void method2(){
}
}