Thinking in Java:第九章-接口

来源:互联网 发布:编程来回打括号好烦 编辑:程序博客网 时间:2024/05/18 03:33
1:包含抽象方法的类叫做抽象类,如果一个类包含一个或多个抽象方法,该类九必须被设定为抽象的。
2:接口 interface不仅仅一个嫉妒抽象的类,因为它允许人们通过创建一个能够被向上转型为多种基类的类型,来实现类似多重继承变种的特性。接口可以包含域,但是这些域隐式的是static 和 final
3:使用接口的原因:为了能够向上转型为多个基类型。使用接口的第二个原因与使用抽象类相同:防止客户端程序员创建该类的对象。在抽象类和接口的选择中,如果要创建不带任何方法定义以及成员变量的基类,就应该创建接口。

4:接口使用案例

public interface Processor {    String name();    Object process(Object o);}

public abstract class StringProcessor implements Processor{    public String name() {        return getClass().toString();    }    public abstract String process(Object o);}

public class Apply {    public static void apply(Processor p, Object o) {        System.out.println("Processor:" + p.name());        System.out.println(p.process(o));    }}
public class Upcase extends StringProcessor {    public String process(Object input) {        return ((String) input).toUpperCase();    }}

public class Splitter extends StringProcessor {    public String process(Object input) {        return Arrays.toString(((String) input).split(" "));    }}

public class Test {    public static void main(String[] args) {        Apply.apply(new Upcase(), "she is a girl");        Apply.apply(new Splitter(), "she is a girl");    }}





原创粉丝点击