3.面向对象(高级)

本文详细介绍了Java面向对象的高级特性,包括继承、super关键字的使用、重写与重载的区别、final关键字的应用、抽象类与接口的定义及区别、多态的概念及其体现,以及内部类、包装类、可变参数和递归等概念,帮助读者深入理解Java面向对象编程的核心概念和技术。
摘要由CSDN通过智能技术生成

1.面向对象(基础)
2.面向对象(进阶)

3.1、继承

3.1.1、概念

继承是面向对象软件技术当中的一个概念,与多态、封装共为面向对象的三个基本特征。继承可以使得子类具有父类的属性和方法或者重新定义、追加属性和方法等。

3.1.2、继承关键字

继承可以使用 extends 和 implements 这两个关键字来实现继承,而且所有的类都是继承于java.lang.Object
当一个类没有继承的两个关键字,则默认继承object(这个类在 java.lang包中,所以不需要 import)祖先类。

  1. extends关键字

在 Java 中,类的继承是单一继承,也就是说,一个子类只能拥有一个父类,所以 extends 只能继承一个类。

public class Animal {
   
    private String name;
    private int id;
 
    public Animal(String Name, String id) {
   
        this.name= name;
        this.id= id;
    }
 
    public void eat(){
   
        System.out.println(name+"正在吃");
    }
 
    public void sleep(){
   
        System.out.println(name+"正在睡");
    }
     
    public void introduce() {
   
        System.out.println("大家好!我是"+ id+ "号"+ name+ ".");
    }
}
 
public  class   Mouse extends   Animal {
   
    public  Mouse(String myName, intmyId) {
   
        super(Name, Id);
    }
}
  1. implements关键字

implements 关键字可以变相的使Java具有多重继承(不是多继承)的特性,使用范围为类实现接口的情况,可以同时实现多个接口(接口之间采用逗号分隔)。

public interface A {
   
    public void eat();
    public void sleep();
}
 
public interface B {
   
    public void run();
}
 
public  class   C implements A,B {
   
 
}

3.1.3、语句格式:

class 子类名 extends 父类名{
   }
class 父类 {
    } class 子类 extends 父类 {
    }

3.1.4、注意

  1. 子类拥有父类的特征,而父类没有,父类更通用,子类更具体(特征包括属性和方法,自身的特性,拥有父类没有的)
  2. 使用extends继承父类,语句格式:class 子类名 extends 父类名{}
  3. 父类中一般只定义一般属性和方法(这个一般可以理解为是子类共有的,这就是父类更通用,而子类拥有其他的,所以子类更具体)
  4. 子类中通过super关键字来调用父构造方法
  5. 在子类中可以继承父类的哪些东西,哪些不可以继承——父类中public、protected修饰的属性和方法可以继承,private修饰的属性和方法不能被继承
  6. 规则:创建子类对象的时
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值