feat(class18): 继承关系,this,super,方法重写

- 在 class18 包中添加了 Test 和 Test2 类,演示了类的继承和方法重写
- 在 class19 包中添加了 Test 类,展示了方法重写的实际应用
This commit is contained in:
2025-07-10 18:08:28 +08:00
parent 3d01dc7367
commit 47d6b9a897
3 changed files with 67 additions and 0 deletions

25
src/class18/Test.java Normal file
View File

@@ -0,0 +1,25 @@
package class18;
public class Test {
public static void main(String[] args) {
C c = new C();
System.out.println(c.a);
System.out.println(c.b);
c.m1();
}
}
class A{
int a = 10;
void m1(){
System.out.println(a);
}
}
class B extends A{
int b = 30;
}
class C extends B{
int a = 30;
}

20
src/class18/Test2.java Normal file
View File

@@ -0,0 +1,20 @@
package class18;
public class Test2 {
public static void main(String[] args) {
Zi z = new Zi();
z.print();
}
}
class Fu{
String name = "fu的name";
}
class Zi extends Fu{
String name = "zi的name";
public void print(){
String name = "局部变量";
System.out.println(name); // 局部变量
System.out.println(this.name); // zi的name
System.out.println(super.name); // fu的name
}
}

22
src/class19/Test.java Normal file
View File

@@ -0,0 +1,22 @@
package class19;
public class Test {
public static void main(String[] args) {
Cat c = new Cat();
c.cry();
}
}
class Cat extends Animal{
@Override //方法重写的校验注解,会校验与被重写方法的形参和返回值类型是否一致,保证方法重写安全
public void cry() {
System.out.println("喵喵喵~~~");
}
}
class Animal{
public void cry(){
System.out.println("动物会叫~~~");
}
}