首页 > 编程语言 >Java中抽象类和接口

Java中抽象类和接口

时间:2023-08-07 19:12:01浏览次数:42  
标签:Java 实现 修饰符 复用 接口 抽象类 方法

修饰符:抽象类中的抽象方法可以有public、protected和default这些修饰符,而接口中默认修饰符是public。不可以使用其它修饰符。

一般来说,接口中不考虑Java8中default方法,没有实现的代码。抽象类可以定义抽象方法和非抽象方法。

 

接口和抽象类的职责不一样。接口主要用于制定规范。即面向接口编程。而抽象类主要目的是为了复用。典型的就是模板方法模式。

一般在实际开发中,我们会先把接口暴露给外部,然后在业务代码中实现接口。如果多个实现类中有相同可复用的代码,则在接口和实现类中间加一层抽象类,将公用部分代码抽出到抽象类中。可以参考下模板方法模式,这是一个很好的理解接口、抽象类和实现类之间关系的设计模式。

  接口的设计目的,提供一种机制,可以强制要求不同的类具有相同的行为。它只约束了行为的有无,但不对如何实现行为进行限制。
而抽象类的设计目的,是代码复用。 当不同的类具有某些相同的行为,可以让这些类都派生于一个抽象类。在这个抽象类中实现了这些方法,达到了代码复用的目的。 对不同类的差异化方法进行抽象,不做具体实现,让子类去实现。正是因为没有实现具体方法,所以抽象类不允许实例化出来(调用抽象方法没有意义)

标签:Java,实现,修饰符,复用,接口,抽象类,方法
From: https://www.cnblogs.com/lukelhi/p/17612461.html

相关文章

  • JavaHTTP心跳:服务器与客户端实时连接的实现方式
    JavaHTTP心跳:服务器与客户端实时连接的实现方式在网络通信中,实时连接是一种至关重要的功能。它允许服务器与客户端之间保持持久的通信信道,实现快速、高效的数据传输。对于Java开发者来说,实现服务器与客户端之间的实时连接可以通过JavaHTTP心跳技术来实现。本文将介绍如何利用Java......
  • Java HTTP请求封装的方法及实现
    JavaHTTP请求封装的方法及实现在Java开发中,我们经常需要与服务器进行数据交互,发送HTTP请求是其中常见的一种方式。为了简化开发过程,我们可以封装HTTP请求的方法,让调用者只需要关注业务逻辑而不用关心底层的细节实现。本文将介绍一种基于Java的HTTP请求封装方法及其实现。JavaHT......
  • Java HTTP多线程下载实现方法
    JavaHTTP多线程下载实现方法在如今互联网高速发展的时代,对于下载来说,速度是一个非常重要的因素。而多线程下载是一种提高下载速度的常见方法。本文将介绍如何使用Java编程实现HTTP多线程下载功能。JavaHTTP多线程下载实现方法一、背景知识在开始实现之前,我们需要了解一些基本......
  • JavaSwing实现验证码功能
    JavaSwing实现验证码功能在Web应用程序开发中,验证码(CAPTCHA)是一种常见的安全措施,用于防止自动化机器人和恶意软件对网站进行攻击。本文将介绍如何使用JavaSwing来实现验证码功能,以帮助您加强Web应用程序的安全性。JavaSwing实现验证码功能一、什么是验证码?验证码是一种通过人......
  • Java Web Service Get请求使用指南
    JavaWebServiceGet请求使用指南在当今互联网时代,WebService已经成为了现代软件开发中不可或缺的一部分。而Java作为一种广泛使用的编程语言,自然也提供了丰富的工具和库来支持WebService的开发。本文将为大家介绍如何使用Java编程语言进行WebService的Get请求。JavaWebserv......
  • 【金九银十面试冲刺】Android岗面试题每日分享——Java篇
    一、Java异常机制中,异常Exception与错误Error区别这道题想考察什么?在开发时需要时候需要自定义异常时,应该选择定义Excption还是Error?编写的代码触发Excption或者Error分别代表什么?考察的知识点Java异常机制考生应该如何回答在Java中存在一个Throwable可抛出类,Throwable有两个重要的......
  • JavaOpenCV相似度计算基础教程
    JavaOpenCV相似度计算基础教程JavaOpenCV是一个基于开放源代码的计算机视觉库,它可以实现许多计算机视觉任务,如图像处理、物体识别和图像相似度计算等。本教程旨在向您介绍JavaOpenCV中的相似度计算基础,帮助您理解如何使用该库计算图像之间的相似度。JavaOpenCV相似度计算基础教程图......
  • Java Reflection机制 实现类的反射与动态调用
    JavaReflection机制实现类的反射与动态调用JavaReflection机制被广泛用于实现类的反射和动态调用,反射是指在运行时检查和操作类的能力。只需要一个类的名称或对象的引用,就可以获取类的信息,调用类的方法,创建对象实例等。JavaReflection机制实现类的反射与动态调用JavaRefle......
  • idea2022.3.1 java文件显示J
     解决办法:1、File>projectstructure>Modules 把Java标成sources,相应资源文件标成resource。2、刷新一下maven,重启一下IDEA就可以了 ......
  • java获取类的属性名
    publicstaticvoidmain(String[]args){try{Classclazz=Class.forName("net.chinaedu.bigc.center.domain.teacher.req.TeacherInfoReq");//根据类名获得其对应的Class对象写上你想要的类名就是了注意是全名如果有包的话要加上比如java.Lang.String......