JAVA-继承,重写,super{笔记}

父类的定义格式(一个普通类的定义):
public class 父类名称{
//成员方法
//成员变量
}

子类的定义格式:
public class 子类名称 extends 父类名称 {
//。。。。。
}
在继承中
有3个class
一个父类,一个子类,一个调用
在这里插入图片描述
父类

public class EEE {
    
    
	public void method(){
    
    
		System.out.println("方法执行");
	}

}

子类

public class TTT extends EEE{
    
    
	

}

调用

public class SSS {
    
    
	public static void main(String[] args) {
    
    
		TTT t=new TTT();
		t.method();
		
	}

}

结果
在这里插入图片描述


重写(Override)
在继承关系中,方法名一样,参数列表也一样
(子类的返回值类型必须【小于等于】父类的返回值类型)
(子类的权限必须【大于等于】父类的权限)
public>protected>(default)>private

重写与重载
重写(Override):方法名一样,参数列表【也一样】,覆盖,覆写
重载(Overload):方法名一样,参数列表【不一样】


super用法(3个)
父类`

public class Fu {
    
    
	public Fu() {
    
    
		System.out.println("父类的构造方法");
	}
	int num= 10;
	public void method1() {
    
    
		System.out.println("访问父类的方法");
	}

}

子类

public class Zi extends Fu{
    
    
	//(1)在子类的成员方法中,访问父类的成员变量
	public Zi() {
    
    
		super();
		System.out.println("子类的构造方法");
	}
	int num=20;
	//(2)在子类成员方法中访问父类成员变量
	public void method() {
    
    
		System.out.println(super.num);
	}
	//(3)在子类成员方法中访问父类成员方法
	public void method1() {
    
    
		super.method1();
		System.out.println("访问子类的方法");
	}

}

调用

public class sss {
    
    
	public static void main(String[] args) {
    
    
		Zi zi=new Zi();
		zi.method();
		zi.method1();
	}

}

结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/QL_DIANDIAN/article/details/108741074