Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在另一个类中创建一个类的对象,UML类图中的关系是什么?_Java_Android_Uml - Fatal编程技术网

Java 在另一个类中创建一个类的对象,UML类图中的关系是什么?

Java 在另一个类中创建一个类的对象,UML类图中的关系是什么?,java,android,uml,Java,Android,Uml,我有一个SessionManager类,我在每个类中创建用户需要登录才能访问的对象。我不确定这里创建的关系类型,因为我似乎把自己与所有在线定义混淆了。我试图创建一个UML类图来表示我的应用程序中的所有类。这是聚合关系还是简单的关联关系 我没有互相扩展的类,因为我制作了一个Android应用程序,它使用意图从一个活动传递到另一个活动,我只是在其他类中创建一些类的对象 此外,是否有任何方法可以在UML类图上表示意图 正在创建SessionManager对象: SessionManager sess

我有一个SessionManager类,我在每个类中创建用户需要登录才能访问的对象。我不确定这里创建的关系类型,因为我似乎把自己与所有在线定义混淆了。我试图创建一个UML类图来表示我的应用程序中的所有类。这是聚合关系还是简单的关联关系

我没有互相扩展的类,因为我制作了一个Android应用程序,它使用意图从一个活动传递到另一个活动,我只是在其他类中创建一些类的对象

此外,是否有任何方法可以在UML类图上表示意图

正在创建SessionManager对象:


SessionManager sessionManager;

在onCreate方法中使用SessionManagerClass中的checkLogin()方法:


sessionManager = new SessionManager(this);
        sessionManager.checkLogin();


它将具有一种关系,换句话说,就是聚合

聚合是一种特殊的关联形式。它是两个类之间的关系,就像关联一样,但是它是一个定向关联,这意味着它严格地说是单向关联。它表示一种具有-a关系

UML构造演示

更多信息:


我认为在这种情况下,组合关系是正确的

class A {
   private B b = new B();
}
//or
class A {
   private B b;
   public A() {
      b = new B();
   }
}

复合聚合是关于运行时的。合成元素将与合成元素一起销毁。桌子在p。UML 2.5状态的110

复合|表示属性是综合聚合的,即复合对象对组合对象的存在和存储负有责任(参见11.2.3中的零件定义)


在您的案例中,似乎可以对此(关联端的填充菱形)进行建模。
SessionManager
应该是某种工厂生产的它负责的
Session
对象。

修复了,我应该裁剪出不相关的图表。修复了源代码抱歉让您很忙。但你所谓的“聚合”是一个共享的组合。请阅读第页。UML2.5的第110条指出,这种关系没有定义的语义。链接的答案肯定是过时的(在旧的UML版本中是有效的,很难),聚合定义是错误的。它不是一个“HAS-a”,而是一个“没有a就不存在”,即:发票行如果没有包含它的发票就不存在。@Luisalvaraday冰箱可以聚合到厨房中。冰箱没有厨房也可以存在。我们不想把冰箱和厨房一起毁掉。请共享指向源的链接,说明聚合没有“HAS-A”关系的原因