抽象类与接口

抽象类的定义与使用

抽象类:

抽象类是在普通类中扩充了一些抽象方法

抽象类需要注意的地方:

  • 抽象类必须有子类,抽象类的子类必须覆写所有的抽象方法
  • 抽象类不一定含有抽象方法,含有抽象方法的类一定是抽象类
  • private和abstract不能同时使用,final和abstract不能同时使用
  • 抽象类的实例化要依赖其子类

简单的写一个抽象类:


public class Main {
    public static void main(String args[]){
        Person person=new Student();
        person.print();
    }
}

abstract class Person{
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    abstract void print();//抽象方法
}

class Student extends Person{
    public void print(){
        System.out.println("student");
    }
}

接口的定义与使用

接口:

全局常量与抽象方法的集合

使用接口时需要注意的地方

  • 一个类可以实现多个接口,一个接口可以继承多个接口
  • 接口的子类必须覆写接口的所有抽象方法
  • 接口中的常量都是被public static final修饰,方法都是被public abstract修饰
  • 抽象类可以实现多个接口,接口不能继承抽象类

简单的写一个接口:


public class Main {
    public static void main(String args[]){
        ipeople ipeople=new People();
        ipeople.print();
    }
}

interface ipeople{
    String string="hello";
    void print();
}

class People implements ipeople{

    @Override
    public void print() {
        System.out.println(ipeople.string);
    }
}

当一个类既要继承类又要实现接口时:

class Student extends Person implements iTeather{ }

抽象类与接口的区别

  1. 一个子类只能继承一个抽象类,可以实现多个接口
  2. 一个抽象类可以实现多个接口,一个接口不能继承抽象类
  3. 抽象类的继承使用extends关键字,接口的实现使用implements关键字
  4. 抽象类中没有权限的限定,接口只能使用public权限
  5. 抽象类是由普通类和抽象方法组成的,接口是由全局常量和抽象方法组成
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值