• Java基础-继承性


    关于java语言当中的继承:

    • 1.继承是面向对象三大特征之一,三大特征分别是:封装,继承,多态

    • 2.继承“基本”得作用是:代码复用。但是继承最重要的作用是:有了继承才有了以后"方法重写"和“多态机制”

    • 3.继承语法格式:

        [修饰符列表] class 类名 extends 父类名{
                类体 = 属性 + 方法
      
      • 1
      • 2
    • 4.java语言当中的继承只支持单继承,一个类不能同时继承很多类,只能继承一个类。在C++支持多继承

    • 5.关于继承中的一些术语:
      A类称为:父类,基类,超类,superclass
      B类称为:子类,派生类,subclass

    • 6.在java语言当中只支持单继承,但是一个类也可以间接继承其它类,例如:

       C extend B{
             }  
             B extends A{
             }
           A extends B{
             }
      //c直接继承B类,但是C类间接继承T,A类。
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
    • 8.java语言中假设一个类没有显示的继承任何类,该类默认继承javase库当中提供的java.lang.Object类

    示例代码01:

    class Account{
        
    	private String actno;
    	private double balance;
    	
    	public Account(){
    		
    	}
    	
    	public Account(String actno,double balance){
    		this.actno = actno;
    		this.balance = balance;
    	}
    
    	public String getActno() {
    		return actno;
    	}
    
    	public void setActno(String actno) {
    		this.actno = actno;
    	}
    
    	public double getBalance() {
    		return balance;
    	}
    
    	public void setBalance(double balance) {
    		this.balance = balance;
    	}
    }
    public class CreditAccount extends Account{
         
    	private String credit;
    	
        public String getCredit() {
    		return credit;
    	}
    
    	public void setCredit(String credit) {
    		this.credit = credit;
    	}
    
    	public CreditAccount(){
        	
        }
         
        public CreditAccount(String credit){
        	this.credit = credit;
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51

    示例代码02:

    public class ExtendTest {
    
    	public static void main(String[] args) {
    		
    		//创建账户对象
    		Account act = new Account();
    		act.setActno("actno-01");
    		act.setBalance(50000.0);
    		System.out.println("账户1" + " " + act.getActno() + " " + "余额" + " " + act.getBalance());
    		
    		//创建信用卡账户对象
    		CreditAccount ct = new CreditAccount();
    		ct.setActno("actno-01");
    		ct.setBalance(1000000.0);
    		ct.setCredit("老赖!");
    		System.out.println("账户2" + " " + ct.getActno() + " " + "余额" + " " + ct.getBalance() + " " + "信用"  + ct.getCredit());
    	}
    
    }
    class Account{
        
    	private String actno;
    	private double balance;
    	
    	public Account(){
    		
    	}
    	
    	public Account(String actno,double balance){
    		this.actno = actno;
    		this.balance = balance;
    	}
    
    	public String getActno() {
    		return actno;
    	}
    
    	public void setActno(String actno) {
    		this.actno = actno;
    	}
    
    	public double getBalance() {
    		return balance;
    	}
    
    	public void setBalance(double balance) {
    		this.balance = balance;
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    示例代码03:

    public class ExtendTest02 {
    
    	public static void main(String[] args) {
    		
    		//创建当前对象
    		//快捷键:查找类型【Open Type】-->Ctrl + shift +t
    		//快捷键:查找资源【Open Resource】-->ctrl + shift + r
    		ExtendTest02 act = new ExtendTest02();
    		String s = act.toString();
            System.out.println(s);//这里编译通过,说明可以调用toString方法,ExtendTest02类方法
            //中有toString方法,从Object类中继承过来的。
    	}
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
  • 相关阅读:
    Arduino驱动FXLN83XXQ三轴加速度传感器(惯性测量传感器篇)
    安装配置deep learning开发环境
    C++经验(十)-- 保存成员函数的函数地址,避免switch-case的大量使用
    独立产品灵感周刊 DecoHack #024 - 90年代的网站设计
    2023年汉字小达人区级比赛倒计时2天,最新问题解答和真题练一练
    竞赛选题 多目标跟踪算法 实时检测 - opencv 深度学习 机器视觉
    100天精通Python(可视化篇)——第100天:Pyecharts绘制多种炫酷漏斗图参数说明+代码实战
    Batch Normalization——李宏毅机器学习笔记
    TMS320F28374S之ADC一
    力扣设计循环队列
  • 原文地址:https://blog.csdn.net/qq_46096136/article/details/126130139