java基础知识-11:抽象类与接口

本文详细介绍了Java中抽象类与接口的区别,包括抽象方法、抽象类的使用、接口的特点(如方法全抽象且公开)、实现接口的条件以及两者在代码中的实际应用。通过实例演示了如何定义和使用抽象类和接口,帮助读者理解它们在面向对象编程中的作用。
摘要由CSDN通过智能技术生成

一 抽象类

1.抽象类:在类和方法中加上关键字abstract,在Java中一个没有方法体的方法被定义为抽象方法,如果一个类中有抽象方法,那么这个类必须定义为抽象类。

2.抽象方法一定在抽象类中;

3.抽象方法和抽象类均可由abstract关键词修饰。

4.抽象类中的方法要使用,必须由子类复写父类中的抽象方法。建立子类调用。其中如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类;

5.抽象类中的抽象方法只有方法声明,没有代码的实现的空方法。普通方法必须有方法体。如下图所示:

6.抽象类使用的时候,一定要有子类,可以有构造函数;final关键词和abstract关键词不可被同时使用。抽象方法不可被final关键词修饰。如下图所示 

二 接口

1.接口是一个特殊的抽象类;当抽象类中的方法都是抽象的,那么该类可以通过接口的形式表示

也就是说接口中的方法都是抽象的且是public的。

2.接口不可以创建对象,因为有抽象方法,需要被子类实现,子类对接口中的抽象方法全部覆盖后,子类才可以实例化。否则子类是一个抽象类。

3.接口中的常量: public static final ;接口中的方法:public abstract xx();

接口中的成员都是public的,且方法是 public abstract的。

4.当抽象类中的方法都是抽象的,那么该类可以通过接口的形式来表示。

5.一个类可以实现多个接口,在类体重可以使用接口来定义常量,而且必须是实现接口中定义的所有的方法。

6.类可以继承一个类,同时可以实现多个接口。在类的声明中用implements关键词表示一个类使用某个接口,在类体中可以使用接口中定义的常量,而且必须实现接口中的所有的方法。

如:

 

 注意:如果要访问父类中的构造函数,可以手动通过super语句来指定。

三 接口与抽象类代码

3.1.抽象类

1.定义抽象类
public abstract class A {
    public abstract void sya();
}
2.实现类
public class B extends A {
    @Override
    public void sya() {
        System.out.println("hello chouxianglei");
    }
}

3.调用:

public  class T {
    public static void main(String[] args) {
        A a=new B();
        a.sya();
    }
}

4.显示结果:

 3.2.接口

1.定义接口

public interface AI {
    public abstract void say();
}

2.定义实现类

public class BI implements AI {
    @Override
    public void say() {
        System.out.println("hello woshi JIEKOU");
    }
}

3.调用

public  class T {
    public static void main(String[] args) {
     AI ai=new BI();
        ai.say();
    }
}

4.结果

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值