java抽象类 vs 接口理解

前提条件

对抽象类和接口有了基本概念的了解。大部分文章整的比较复杂,虽然说得对,但还是不好区分。

核心概要总结如下:

-- 抽象类 跟普通类没啥大区别,只是多了抽象方法。不能new。 属于顶层设计,定义出共有的属性和方法。
含有抽象方法一定是抽象类。

-- 接口,更严格,不能new
只能定义常量 public static final,默认的可忽略
只能有抽象方法,不能有构造方法,默认就是public abstract 可以忽略
jdk1.8之后,放宽条件,可以 defalut关键字声明普通方法,静态方法

使用场景:

抽象类,一般用于含有共有属性及功能的抽取,如人是一个抽象类,下面还有男人 女人等,人都有公用的属性和方法。java是单继承

接口,可以多实现、继承,解耦,多态。 动物>> 狗 猫

综上,大概就是这个样子,相比其它文字的长篇大论是不是清晰很多,只要理解核心即可。

标签: 抽象类和接口


阿里云优惠主机

添加新评论

免责声明
本博客部分内容来自于互联网,不代表作者的观点和立场,如若侵犯到您的权益,请联系[email protected]。我们会在24小时内进行删除。