Java interface is a series of method declarations and a collection of method characteristics. An interface only has method characteristics but no method implementation, so these methods can be used differently in different places. Class implementations, and these implementations can have different behaviors (functionality).
The functions of the interface are as follows:
1. Enrich Java object-oriented thinking: In the Java language, abstract class and interface are two methods that support the definition of abstract classes. mechanism. It is precisely because of the existence of these two mechanisms that Java is given powerful object-oriented capabilities.
2. Provide simplicity and standardization: conducive to code specifications. If a project is relatively large, then an architect who can sort out all businesses is needed to define some main interfaces. These interfaces not only tell developers You need to implement those businesses, and also limit the naming convention (to prevent some developers from naming them casually and making other programmers unable to understand them).
3. Improve maintenance and scalability: It is beneficial to maintain the code. For example, if you want to make a drawing board program, there is a panel class in it, which is mainly responsible for the painting function. Then you define this class like this, but in the near future, you suddenly find that this class cannot satisfy you, and then you have to redesign it. What's worse is that you may have to abandon this class, and it may be referenced in other places, which will be very troublesome to modify. If you define an interface at the beginning, put the drawing function in the interface, and then implement this interface when defining the class , and then you only need to use this interface to refer to the class that implements it. If you want to change it in the future, you will just refer to another class, thus achieving the convenience of maintenance and expansion.
4. Enhance security and rigor: It can ensure the safety and rigor of the code. Interface is an important means to achieve loose coupling of software. It describes all external services of the system without involving any specific implementation details. This is safer and more rigorous (generally software service providers consider it more).
About the usage specifications of the interface:
1. Constants can be defined in the interface, but variables cannot be defined. If you If you define a property in an interface, you can see through decompilation that it will be automatically modified with public static final. The properties in the interface are all global static constants. The constants in the interface must specify an initial value when they are defined.
2. All methods in the interface are abstract methods. The methods in the interface will be automatically decorated with public abstract, that is, there are only global abstract methods in the interface.
3. The interface cannot be instantiated, and there cannot be structures in the interface.
4. The inheritance relationship between interfaces can be realized through extends. One interface can inherit multiple interfaces, but interfaces cannot inherit classes.
5. The implementation class of the interface must implement all methods of the interface, otherwise it must be defined as an abstract class.
Recommended learning: Java video tutorial
The above is the detailed content of What is the use of java interfaces?. For more information, please follow other related articles on the PHP Chinese website!