Java - Interface 接口的实现方式实例

 


 

在程序的开发中,需要完成两个数的求和运算和比较运算功能的类非常多。那么可以定义一个接口来将类似的功能组织在一起。下面创建一个示例,具体介绍接口的实现方式。

 



1)创建一个名称为 IMath 的接口,代码如下:

 

1 public interface IMath {
2     public int sum();    // 完成两个数的相加
3     public int maxNum(int a,int b);    // 获取较大的数
4 }

 

 

 

2)定义一个 MathClass 类并实现 IMath 接口,MathClass 类实现代码如下:

 

 1 public class MathClass implements IMath {
 2     private int num1;    // 第 1 个操作数
 3     private int num2;    // 第 2 个操作数
 4     public MathClass(int num1,int num2) {
 5         // 构造方法
 6         this.num1 = num1;
 7         this.num2 = num2;
 8     }
 9     // 实现接口中的求和方法
10     public int sum() {
11         return num1 + num2;
12     }
13     // 实现接口中的获取较大数的方法
14     public int maxNum(int a,int b) {
15         if(a >= b) {
16             return a;
17         } else {
18             return b;
19         }
20     }
21 }

 

 

在实现类中,所有的方法都使用了 public 访问修饰符声明。无论何时实现一个由接口定义的方法,它都必须实现为 public,因为接口中的所有成员都显式声明为 public。

 



3)最后创建测试类 NumTest,实例化接口的实现类 MathClass,调用该类中的方法并输出结果。该类内容如下:

 

1 public class NumTest {
2     public static void main(String[] args) {
3         // 创建实现类的对象
4         MathClass calc = new MathClass(100, 300);
5         System.out.println("100 和 300 相加结果是:" + calc.sum());
6         System.out.println("100 比较 300,哪个大:" + calc.maxNum(100, 300));
7     }
8 }

 

 

 

4)程序运行结果如下所示。

100 和 300 相加结果是:400
100 比较 300,哪个大:300



总结:在该程序中,首先定义了一个 IMath 的接口,在该接口中只声明了两个未实现的方法,这两个方法需要在接口的实现类中实现。在实现类 MathClass 中定义了两个私有的属性,并赋予两个属性初始值,同时创建了该类的构造方法。因为该类实现了 MathClass 接口,因此必须实现接口中的方法。在最后的测试类中,需要创建实现类对象,然后通过实现类对象调用实现类中的方法。

 

 


 

 

Note:
欢迎点赞,留言,转载请在文章页面明显位置给出原文链接
知者,感谢您在茫茫人海中阅读了我的文章
没有个性 哪来的签名!
详情请关注点我
持续更新中

© 2020 11 - Guyu.com | 【版权所有 侵权必究】

posted @ 2020-11-02 13:49  故屿γ  阅读(980)  评论(0编辑  收藏  举报