java – 接口与具体类

前端之家收集整理的这篇文章主要介绍了java – 接口与具体类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
下面我有一个Person接口,一个实现类和一个驱动程序类,它使用一个名字初始化Person,并再次输出.使用的优点是什么?
Person person = new PersonImpl();

代替

PersonImpl person = new PersonImpl();

界面应该隐藏实现?
这是使用界面的正确方法吗?

public class Driver {

    public static void main(String [] args)
    {
        Person person = new PersonImpl();
        person.setName("test name");
        System.out.println("Name is "+person.getName());
    }

}


public interface Person {

    public void setName(String name);

    public String getName();

}


public class PersonImpl implements Person{

    private String name;

    public String getName() {
        return this.name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

解决方法@H_502_15@
这是使用接口的方式.

原因是,您可以稍后再编写另一个实现,而无需更改使用Person的代码.

所以现在你可以使用PersonImpl,但是后来你可能需要一个OtherTypeOfPersonImpl.

您可以创建实现相同接口的新类,并且可以使用新类与任何其他期望一个Person的代码.

一个很好的例子是List界面.

List有多个实现,如ArrayList,LinkedList等.这些都有优缺点.通过编写使用List的代码,您可以让每个开发人员决定哪种类型的列表对他们最有效,并能够处理任何一个而不进行任何更改.

原文链接:https://www.f2er.com/java/123670.html

猜你在找的Java相关文章