关于Java中接口的一些探讨与总结

接口:

1)接口体中可以由抽象方法和常量,但不能有变量。因为在接口中,类似于int MAX=100;的写法等价于 public static final int MAX=100; 因此没有变量。

2)接口体中所有抽象方法和static常量的访问权限都是public。

3)JDK8以后,允许使用default关键字,在接口体中定义称作default的实例方法。并且default实例方法的访问权限必须是public。

4)  允许定义接口体中的static方法以及private方法

5)如果一个类实现了某个接口,那么这个类就自然拥有了接口中的常量、default方法(但会去掉default关键字),但是,该类并不拥有接口中的static方法和private方法。并且,接口中除了private方法以外,其他方法的访问权限默认都是public,重写时不可以省略public,否则就降低了访问权限,这是不允许的。

6)接口没有构造方法

7)如果一个非abstract类实现了某个接口,那么这个类就必须重写该接口的所有abstract方法

8)如果一个abstrac类实现了某个接口,该类可以选择重写接口的abstract方法或直接拥有接口的abstract方法

代码例证

1.package com.zzh;
2.//学生功能接口
3.
4.public interface StudentFunction {
5.    //添加、删除、查看、显示、排序功能的抽象方法,被研究生类和本科生类重写
6.     void addStudent();
7.     boolean delete(long number);
8.     boolean search(String name,long number);
9.     void sort(String choice,String option);
10.     void show();
11.}

猜你喜欢

转载自blog.csdn.net/m0_64198455/article/details/128470208