抽象类与接口

抽象类与接口

什么是抽象类

抽象类就是指:创建出来,不希望,不打算去实例化出这个类本身这个实例对象的类。

通常都是在新建父类的时候把它设置成抽象,只是为了让他的子类去完成和实现一些方法。

语法结构:

public abstract class Father {
    //代码块
}

抽象类的使用

使用 abstract 关键字

abstract 关键字,可以修饰类,也可以修饰方法。

例如:

public abstract void speak();

可以看见,这里没有写方法体。因为写了就报错,哪怕是空白的方法体。

它只需要声明,不需要实现方法体的方法,我们叫做抽象方法。

这是因为,抽象方法是不实现具体内容的。它的实现都是靠子类的重写实现。

class Son extends Father{

    @Override
    public void speak() {
        System.out.println("我是个人");
    }
}

在这里插入图片描述

抽象就是指当前这个类和方法,不具体实现,都是靠子类去实现。

有抽象方法的类,一定是抽象类。

而,抽象类中不一定含有抽象方法。(即,抽象类也是有成员变量跟构造方法,一般方法,属性)

抽象类跟抽象方法都必须使用 abstract 关键字去修饰

抽象类的子类必须重写的父类的方法,否则这个子类也会是抽象类,需要交给它的子类去实现

final 关键字

最终,最后的意思。

用这个关键字修饰的类以及方法,都是最后一个,无法被其他的类继承,无法被其他的方法重写。

1、 final 标记的类不能被继承。

2、 final 标记的方法不能被子类复写。

3、 final 标记的变量(成员变量或局部变量)即为常量,只能赋值一次,而且只能在声明的时候就赋值。

这里的概念我们明白:

抽象类肯定不能使用 final 关键字修饰,final关键字也不能用来修饰抽象方法。

接口

接口,就是比抽象类更抽象的抽象类。

使用关键字 interface 修饰。

语法结构:

public interface Test {
    //代码
}

为什么说它是更抽象的抽象类呢。

因为它只有常量,抽象方法

接口的作用

使用接口可以,对类之间进行隔离

可以实现高内聚,低耦合

使用

类的继承只能单继承,但是可以多重继承(即,爷爷—爸爸—儿子)

不过,一个类可以实现多个接口

语法:

public class Son extends Father implements Test_1 , Test_2{
	//代码块
}

一个接口也可以继承一个接口

public interface Test extends Test2 {
    //代码块
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值