有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

类UML三元关联实现java代码

三元关联是一种结构关系,指定一个事物的对象与另两个事物的对象相连接

我理解这种关系,但我不知道如何实现显示这三个类之间关联的方法

让我们考虑下面的例子

  • 该项目有许多使用特定编程的开发人员 语言促进发展
  • 开发人员使用特定的编程语言来开发大量的项目
  • 在选定的项目中,一个开发人员只使用一种编程语言

ternary association between project ,developer and programming language

这三类之间存在着三元关联

我在互联网上读到了关于这一点的不同来源,但找不到解决方案

如何用代码(java)实现上述场景

p.S-不仅如此,任何其他三元关联编码示例都将受到欢迎


共 (2) 个答案

  1. # 1 楼答案

    可以使用一个类来表示“项目”。这门课有:

    -Map <Developer, Langage>开发者

    一个类代表一个“开发人员”。这门课有:

    -Set<Langage>语言

    -Set<Projects>项目

    最后,一个类代表“语言”

    Class Project {
        Map<Developer, Language> developers = new HashMap<>();
    
        public void add(Developer developer) {
            developers.put(developer, developer.getLanguage());
            developer.registerOn(this);
        }
    
    Class Developer {
    
        private Set<Language> languages;  
        private Set<Projects> projects;
    
        public boolean developIn(Language language) {
           return languages.contains(language);
        }
    
        public void registerOn(Project project) {
           projects.add(project);
        }
    }
    
    Enum Language {
        JAVA,
        PHP;
    }
    
  2. # 2 楼答案

    UML图并没有说你相信它说的话。协会也是一个对象

    如果要指定“在选定的项目中,”一个开发人员只使用一种编程语言“,则图表应为:

    enter image description here