java - 父类中的 getter 和 setter

标签 java actionscript-3 actionscript

我有一个关于最佳实践的快速问题,以及 getter 和 setter 是否是特定情况下的最佳选择。这种情况是当我有类“A”实例化类“B”和“C”时。 A 类包含 B 类和 C 类访问的公共(public) getter 和 setter,因此数据是集中的。

这是最佳实践还是最好通过参数将数据传递给 B 类和 C 类?

谢谢

克里斯

最佳答案

我个人建议构建您的应用程序,以便传递 B 类和 C 类所需的所有数据。这将消除它们对 A 类的依赖,从而减少耦合和复杂性;例如:

public class A {
    private var b : B;

    public function A() {
        b = new B();
        b.someData = "some data that b requires";
    }
}

然后,您可以通过称为Inversion of Control的过程从A类中删除B类的实例化来进一步改进这一点。 。这样你就可以使 B 类成为 A 类的依赖项。

public class A {
    private var b : B;

    public function A(b : B) {
        this.b = b;
    }
}

这允许外部客户端提前配置 B 实例,使您的项目结构对于以后的更改更加灵活:

public class Client {
    public function Client() {
        var b : B = new B();
        b.someData = "The Client is now Configuring B";

        var a : A = new A(b);
    }
}

关于java - 父类中的 getter 和 setter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6028677/

相关文章:

actionscript-3 - 在 Adob​​e AIR 应用程序中创建通知窗口

actionscript-3 - 是否可以在Adobe AIR中监视或更改系统音频音量?

android - 如何将启动图像添加到 adobe air for android 应用程序?

java - 上传多个 jar 以 repo gradle

java - FastVectorHighlighter 短语突出显示不适用于词干提取

java - 如何检索@Async方法的结果

apache-flex - Adobe Flex 组件事件

actionscript - Away3D 4.0 从数组加载图元的动态纹理

actionscript-3 - ActionScript 2.0 和 ActionScript 3.0 有什么区别

java - 如何使用 itext 将文本区域输入转换为 pdf 并使其可下载