与聚集类之间的关系(Associations between the classes with ag

2019-10-29 07:53发布

我需要创建一个UML类图,我不知道我是否已经正确地完成它。

我会告诉你的例子。 因此,具有的ClassA ClassB的实例,并调用的ClassA从ClassC这需要从ClassA和ClassB的属性变量的方法。 我应该用ClassB的也连接ClassC? 是否ClassA和ClassB的之间的关联,应直接? 下面的代码的实现:

ClassB {
    constructor() {
        this.str1 = "Hello";
    }
}

ClassA {
    constructor() {
        this.str2 = "World";
        this.objB = new ClassB();
    }
    funA() {
        let objC = new ClassC();
        objC.function1(this.objB.str1);
        objC.function2(this.str2);
    }
}

ClassC {
    constructor() {}
    function1(stringFromB) {
        console.log(stringFromB);
    }
    function2(stringFromA) {
        console.log(stringFromA);
    }
}

let objA = new ClassA();
objA.funA();

谢谢你的帮助 :)

Answer 1:

复合聚合大约为对象的生命时间。 还有的指出在你的代码,显示了必要。

(注:我不知道Java的作用域规则,所以我把this.objB为私有。)有一个协会,是一个拥有财产ClassA命名(由点所示) objB 。 所述依赖关系ClassC来自(暂时使用) objC这是不上类级别。 它可以讨论的关联是否会匹配(老实说,我不得不深入挖掘规格),但相关性是没有错的在任何情况下(因为它比关联弱,绝对A依赖于B )。

另一个NB重。 您的CD:在代码的函数采用字符串,而不是对象,其中一人错过了尾随1



文章来源: Associations between the classes with aggregation