大白话之Java面向接口编程:最“正经”的中文实例讲解,看不懂来打我!

前言

作为一个正经博主,我会用最纯洁易懂的方式让你理解面向接口编程。

阅读本篇文章,你需要对以下知识有所了解:

  • 面向对象编程基础知识
  • 接口(这儿有

实例

废话少说。打开你的IDE(没有?去下!),新建一个类,命名为Main,复制下方代码:

 1interface 动作 {
 2    void 结婚();
 3    void 生孩子();
 4}
 5
 6class 如花 implements 动作 {
 7    @Override
 8    public void 结婚() {
 9        System.out.println("为什么?");
10    }
11
12    @Override
13    public void 生孩子() {
14        System.out.println("凭什么?");
15    }
16}
17
18class 美女 implements 动作 {
19    @Override
20    public void 结婚() {
21        System.out.println("就现在!");
22    }
23
24    @Override
25    public void 生孩子() {
26        System.out.println("就今晚!");
27    }
28}
29
30class 帅气的我 {
31    private 动作 小姐姐;
32
33    public 动作 我女朋友是谁() {
34        return 小姐姐;
35    }
36
37    public void 指定女友(动作 小姐姐) {
38        this.小姐姐 = 小姐姐;
39    }
40
41    public 帅气的我() {}
42
43    public 帅气的我(动作 小姐姐) {
44        this.小姐姐 = 小姐姐;
45    }
46
47    public void 我要结婚(){
48        this.小姐姐.结婚();
49    }
50
51    public void 我要生孩子(){
52        this.小姐姐.生孩子();
53    }
54}
55
56public class Main {
57    public static void main(String[] args) {
58        帅气的我 欧巴 = new 帅气的我();
59        动作 如花本人 = new 如花();
60        动作 美女本人 = new 美女();
61
62        欧巴.指定女友(如花本人);
63        欧巴.我要结婚();
64
65        欧巴.指定女友(美女本人);
66        欧巴.我要生孩子();
67    }
68}

别急着运行!多看两遍,猜猜运行结果会是什么?

解析

结构不难,让我们来捋一捋。

接口 接口功能 接口继承 实现功能 实现方法
动作 结婚 如花 System.out.println("为什么?"); new 如花().结婚();
--- --- 美女 System.out.println("就现在!"); new 美女().结婚();
动作 生孩子 如花 System.out.println("凭什么?"); new 如花().生孩子();
--- --- 美女 System.out.println("就今晚!"); new 美女().生孩子();

帅气的我是包装类,可以指定new出的女友实例,并对该女友通过帅气的我执行指定的方法。

后语

我们可以将面向接口的编程步骤做个整理:

  • 动作接口规定了可以对女生做的“动作”;
  • 美女如花类继承了动作类,并规定了对动作产生的反应(执行的方法);
  • 帅气的我可以接收实例化(new)后的女友对象,并对其使用结婚生孩子两种方法。

祝大家早日脱单!

如转载请在文章尾部添加

原作者来自 adlered 个人技术博客:https://www.stackoverflow.wiki/

评论

  1. ???

  2. 小姐姐

取消