gpt4 book ai didi

java - AP CS 实践 - OOP

转载 作者:行者123 更新时间:2023-12-02 00:30:12 25 4
gpt4 key购买 nike

我在 AP CS,正在尝试弄清楚这是否有效。

public interface Controller
public class Widget implements Controller
public class Thingy extends Widget

Controller myControl = new Thingy();

假设顶部的接口(interface)/类实际上已定义。第四行(Controller myControl = new Thingy();)是否有效,或者您不能从这样的接口(interface)创建对象吗?

最佳答案

你可以。

在本例中,您正在实例化 Thingy 的实例,它是一个具体类。您刚刚将其声明为 Controller 类型。这仅仅意味着使用它的任何东西都只能访问接口(interface)Controller中可用的方法(除非它们向下转换,使用反射等)。这是一个很好的做法,因为它允许您交换 myControl 的实际实现,并且该对象的用户不会关心。

关于java - AP CS 实践 - OOP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9230482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com