Live2D
复制代码

09-类的继承

类的继承

继承是面向对象三大特性之一,继承了父类的子类可以使用父类的所有功能,并且在无需重新编写原来类的情况下对这些功能进行扩展。

拓展:

​ 1、类和类之间只能单继承,不能继承多个类;

​ 2、一个非抽象类只能继承一个抽象类;

​ 3、一个抽象类也只能继承一个抽象类;

​ 4、一个类可以实现多个接口;

​ 5、一个接口可以继承多个接口;

package i类的继承;

public class SuperClass {//父类
	
	public void m1(){
		System.out.println("m1...");
	}
	public void m2(){
		System.out.println("m2...");
	}

}

/*
 * 引入类继承最基本的作用是 代码重用
 * 就是子类继承父类,子类中包括了父类的方法
 * 
 *     语法:
 *     [修饰符列表] class 子类名 extends 父类名{
 *          类体;
 *     }
 *     java语言中,类和类之间只支持单继承
 *     
 *     一个类如果没有显示继承其他类,则该类默认继承Object类
 *     Object是sun提供的
 */
package i类的继承;

public class Sub extends SuperClass {
	
	public void m3(){
		
			System.out.println("m3...");
		
	}

}

package i类的继承;

public class Test {
	
	public static void main(String[] args){
		
		Sub n = new Sub();
		n.m1();//m1...
		n.m2();//m2...
		n.m3();//m3...
	}

}

/*
 *   账户类
 *        也称
 *        父类、超类、基类、SuperClass类
 */
package i类的继承;

public class Account00 {
	
	//账户
	private String actno;
	
	//余额
	double balance;
	
	//Constructor
	Account00(){}
	
	Account00(String actno,double balance){
		
		this.actno=actno;
		this.balance=balance;
	}
	
	//setter and getter
	public void set(String actno){
		
		this.actno=actno;
	}
    public String get(){
		
		return actno;
	}

}

/*
 *    信用账户
 *          子类、派生类、SubClass
 *          java语言中子类继承父类,会将父类所有数据都继承,包括私有的
 *          但是在子类中无法直接访问父类中的私有数据。但是可间接访问
 *          
 *          注意:构造方法无法被继承
 */
package i类的继承;

public class DebitAccount00 extends Account00 {
	
	//信誉度
	double debit;

}

package i类的继承;

public class Test00 {
	
	public static void main(String[] args){
		
		//创建信用卡对象
		DebitAccount00 da = new DebitAccount00();
		
		//给信用卡账号赋值
		da.set("456988945445466556");//赋值
		System.out.println(da.get());//读取
		
		//不能直接访问actno
		//System.out.println(da.actno);
	}

}

posted @ 2021-07-22 22:13  Milen-jie  阅读(101)  评论(0编辑  收藏  举报