1. java中的多重继承
在c++中,组合多个类的接口的行为被称为多重继承。
在java中一个类只能继承一次,但可以实现多个接口,注意,继承必须写在实现前面
2. 使用接口的核心原因:
1) 为了能够向上转型为多个父类型(以及由此而带来的灵活性)
2) 防止程序员创建该类的对象
3. 策略设计模式:
在c++中,组合多个类的接口的行为被称为多重继承。
在java中一个类只能继承一次,但可以实现多个接口,注意,继承必须写在实现前面
2. 使用接口的核心原因:
1) 为了能够向上转型为多个父类型(以及由此而带来的灵活性)
2) 防止程序员创建该类的对象
3. 策略设计模式:
传递不同的StringProcessor实现类,将会分别做不同的事情
public abstract class StringProcessor implements Processor {
public String name() {
return getClass().getSimpleName();
}
public abstract String process(Object input);
public static String s = "If she weighs the same as a duck, she's made of wood";
public static void main(String[] args) {
Apply.process(new Upcase(), s);
Apply.process(new Downcase(), s);
Apply.process(new Splitter(), s);
}
}
class Upcase extends StringProcessor {
public String process(Object input) { // Covariant return
return ((String) input).toUpperCase();
}
}
class Downcase extends StringProcessor {
public String process(Object input) {
return ((String) input).toLowerCase();
}
}
class Splitter extends StringProcessor {
public String process(Object input) {
return Arrays.toString(((String) input).split(" "));
}
}