zoukankan      html  css  js  c++  java
  • Interface的精髓——《Thinking in Java》随笔025

     1 //: InterfacePower.java
     2 package cn.skyfffire;
     3 
     4 import java.util.Vector;
     5 
     6 /**
     7  * 深究抽象类的应用
     8  *
     9  * user: skyfffire
    10  * time: 下午3:20:35
    11  */
    12 public class InterfacePower {
    13     /**
    14      * 为对象定义相同的接口
    15      * 
    16      * @author skyfffire
    17      *
    18      */
    19     interface Student {
    20         public String writeHomework();
    21     }
    22     
    23     /**
    24      * 抽象类的测试
    25      * 
    26      * @param args
    27      */
    28     public static void main(String[] args) {
    29         // 定义一个班级属性用来封装该班级的学生
    30         Vector<Student> classes = new Vector<Student>();
    31         
    32         // 定义三个学生,给予不同的写作业速度
    33         Student xiaoMing = new Student() {
    34             @Override
    35             public String writeHomework() {
    36                 return "The xiaoMing is very slow to write homework.";
    37             }
    38         };
    39         
    40         Student xiaoHong = new Student() {
    41             @Override
    42             public String writeHomework() {
    43                 return "The xiaoHong is very quick to write homework.";
    44             }
    45         };
    46         
    47         Student xiaoGang = new Student() {
    48             @Override
    49             public String writeHomework() {
    50                 return "The xiaoGang is normal to write homework.";
    51             }
    52         };
    53         
    54         // 将三个同学添加到这个班级
    55         classes.add(xiaoMing);
    56         classes.add(xiaoHong);
    57         classes.add(xiaoGang);
    58         
    59         // 遍历这个班级的所有人,就算各自的习惯(方法实现)不同
    60         // 但是都实现了同一个接口的同一个方法,所以可以拥有同样的行为。
    61         for (Student s : classes) {
    62             System.out.println(s.writeHomework());
    63         }
    64     }
    65 }
    66 
    67 ///:~
  • 相关阅读:
    XLS导出的服务器端配置方式
    SQLSERVER2008 内存占用高的处理方式
    word定义多级列表
    SQL Server替换特殊字符
    php和mysql两种不同方式的分割字符串和类型转换
    tp杂记
    MySql数据库 主从复制/共享 报错
    the server ssl certificate failed to verify
    loaded some nib but the view outlet was not set(转载)
    xcode7 调用相册权限无提示
  • 原文地址:https://www.cnblogs.com/skyfffire/p/6559763.html
Copyright © 2011-2022 走看看