search
HomeJavaJavagetting StartedIs an interface in java a special abstract class?

Is an interface in java a special abstract class?

Oct 26, 2020 pm 04:00 PM
javaabstract classinterface

The interface in Java is a special abstract class. All methods in the interface are abstract methods, and all attributes in the interface are constants; that is, there are only method definitions in the interface but no methods. accomplish. Interfaces are a means to solve the problem that Java cannot use multiple inheritance, but in practice, interfaces play more of a role in setting standards.

Is an interface in java a special abstract class?

Related recommendations: "Java Video Tutorial"

Java interface is a declaration of a series of methods. It is a collection of method characteristics. An interface only has method characteristics but no method implementation. Therefore, these methods can be implemented by different classes in different places, and these implementations can have different behaviors (functions). An interface can be understood as a special class, which is composed of global constants and public abstract methods. Interfaces are a means to solve the problem that Java cannot use multiple inheritance, but in practice, interfaces play more of a role in setting standards. Or we can directly understand the interface as a 100% abstract class, that is, all methods in the interface must be abstract methods.

What is the interface used for?

By using the interface, the same behavior of related classes can be achieved without considering the hierarchical relationship between these classes. The interface is the implementation class External appearance.

The idea of ​​interface

The idea of ​​interface is "encapsulation and isolation"

The benefits of using interfaces

Since external calls and internal implementation are separated by the interface, as long as the interface remains unchanged, changes in the internal implementation will not affect external applications, making the system more flexible, with better scalability and maintainability, which also It is the so-called "interface is the guarantee of system pluggability".

Selection of interfaces and abstract classes

Since the interface is a special abstract class, when should you choose an interface during development? When to choose abstract classes?

  • Preferred interface

  • When you want to define the behavior of a subclass and provide public functions for the subclass, you should choose an abstract class

The above is the detailed content of Is an interface in java a special abstract class?. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Have Crossplay?
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use