关于Abstract和接口

**Abstract修饰的方法叫抽象方法,抽象方法:没有方法体的方法。

抽象方法没有方法体,这个方法本身没有任何意义,除非它被重写。在继承子类中重写之后,你就可以写实现内容。

格式:修饰符 abstract 返回值类型 函数名最后以分号结束。
示例:public abstract void method();

Abstract修饰的类叫抽象类 。
public abstract class Test{ }

一个抽象类不一定有抽象方法,抽象方法所在的类就是抽象类。也就是说,一个抽象类可以不写抽象方法,只写一些普通方法,抽象类也有构造方法,但是抽象类不可以直接实例化。

实际上抽象类除了被继承外没有任何意义。普通子类继承抽象类,要有父类的所有抽象方法重写。抽象子类不用重写。

interface(接口)
接口没有构造方法,不能实例化,需要创建其子类对象来完成实例化操作。
接口的定义:Interface接口名
实现关系的定义:class类名implements接口名

接口是一种引用数据类型最重要的内容就是其中的抽象方法。
接口就是多个类的公共规范,类似于排插,或者安卓充电器。接口是更高层次的抽象

在接口中方法是被默认添加了public abstract,所以可以说接口中所有的方法都没有方法体。但也可以有主方法,但意义不大。

在接口中成员变量也被默认添加了final,也就是被定义成了常量,必须要初始化赋值,不能只声明。

由于一个对象本身的值是可以改变的,因此为了使一个常量真正做到不可更改,可以将常量修饰符声明为static final。通过实践也可以得出,定义一个成员变量时,如果加了final不赋值的话就会报错,但是如果是局部变量,就不会报错,也就是说可以只声明不初始化。

所以说我们学习接口,大概懂得它是什么怎么用就好了。毕竟在实际中用到的接口大多不是我们自己定义的,而是JDK里有的。**

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值