package com.boda.xy; public class Duck implements Swimmable,Flyable{ @Override public void swim(){ System.out.println("I can swim."); } @Override public void fly(){ System.out.println("I can fly."); } public static void main(String[]args){ Duck d = new Duck(); d.swim(); d.fly(); Swimmable s = d; // 自动类型转换 s.swim(); //调用实现类的swim()方法 } }
package com.boda.xy; public interface Flyable { void fly(); }
package com.boda.xy; public interface Swimmable { void swim(); }
1.2 设计一个名为IntSequence的接口表示整数序列,该接口包含boolean hasNext()和int next()两个方法。定义一个名为RandomIntSequence的类实现IntSequence接口,其中包含一个private整型变量n。在hasNext()方法中随机生成一个两位整数,存储到变量n中,然后返回true。在next()方法中返回n的值。
package com.boda.xy; public interface IntSequence { public abstract boolean hasNext(); public abstract int next(); }
package com.boda.xy; public class RandomIntSequence implements IntSequence{ private int n; public boolean hasNext(){ n = 10 + (int)(Math.random()*90); return true; } public int next(){ return n; } }
package com.boda.xy; public class SequenceTest {public static double average(IntSequence seq, int n) { double sum = 0.0; int m = n; while (seq.hasNext() && m > 0) { sum = sum + seq.next(); m = m - 1; } return sum / n; } public static void main(String[] args) { RandomIntSequence rs = new RandomIntSequence(); double value = average(rs, 10); System.out.println(value); } }