Java面向对象之抽象类、类、接口分析参考

这篇具有很好参考价值的文章主要介绍了Java面向对象之抽象类、类、接口分析参考。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Java面向对象之抽象类、接口

Java 抽象类

抽象类不能实例化对象,所以抽象类必须被继承,才能被使用;

Java 中抽象类表示的是一种继承关系,一个类只能继承一个抽象类,而一个类却可以实现多个接口

1. 抽象方法:
用Abstract 关键字声明抽象方法,只包含一个方法名,没有方法体。方法名后面直接跟一个分号结束,而不是花括号;

子类继承父类的抽象方法时必须重写;或者声明自身为抽象类
最终必须有子类实现该父类的所有抽象方法
只有抽象类才能有抽象方法(也可有普通方法)

public abstract class Employee
{
   private String name;
   private String address;
   private int number;
   
   public abstract double computePay();
   
   //其余代码
}

2. Java 接口
在JAVA中是一个抽象类型,是抽象方法的集合,以interface来声明。一个类可通过继承接口的方式,从而来继承接口的抽象方法。接口也可继承接口;

接口为abstract
接口方法为public abstract
接口变量为public static final
都是默认的,无需写出

[可见度] interface 接口名称 [extends 多个接口名] {
        // 声明变量
        // 抽象方法
}

标记接口

标记接口作用:简单形象的说就是给某个对象打个标(盖个戳),使对象拥有某个或某些特权。
例如:java.awt.event 包中的 MouseListener 接口继承的 java.util.EventListener 接口定义如下:

package java.util;
public interface EventListener
{}

3. 接口与类相似点:

一个接口可以有多个方法。
接口文件保存在 .java 结尾的文件中,文件名使用接口名。
接口的字节码文件保存在 .class 结尾的文件中。
接口相应的字节码文件必须在与包名称相匹配的目录结构中。

4. 接口与类的区别:

1.接口不能用于实例化对象。 接口没有构造方法。接口支持多继承(继承多个接口)。
2.接口中所有的方法必须是抽象方法,Java 8 之后 接口中可以使用 default关键字修饰的非抽象方法。
3.接口不能包含成员变量,除了 static 和 final 变量。 接口不能被类继承,需要被类实现。

5. 抽象类和接口的区别

1.抽象类中的方法可以有方法体
{JDK 1.8 以后,接口允许包含具体实现的方法,该方法称为"默认方法",使用 default 关键字修饰}
{JDK 1.9 以后,允许将方法定义为 private,使得某些复用的代码不会把方法暴露出去}

2.抽象类中的成员变量可以是各种类型的
3.抽象类可以有静态代码块和静态方法( static ){jdk1.8以后,接口也可以有}
4.一个类只能继承一个抽象类,却可以实现多个接口

在这里欢迎大家的点赞、关注、评论,以此来促进大家互相学习交流,同时可以让新加入的小伙伴更快的了解新知识!!!

以上内容如有侵权,请联系作者进行删除

≧◠◡◠≦ 1分2分都是爱,感谢已经打赏的老板,和正在打赏的老板们 ≧◠◡◠≦文章来源地址https://www.toymoban.com/news/detail-683256.html

到了这里,关于Java面向对象之抽象类、类、接口分析参考的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包