UML和java类
我确实需要你的宝贵帮助。 几周前,我用Java开发了一个小程序。 可能是一种错误的方法,但我并没有在脑海中用UML来解决这个问题,而是基于一个给定的想法,我 构建了一个功能齐全的软件,达到了预期的效果 程序本身由两个类和几个方法组成 现在我需要绘制相应的UML类图,这对我来说似乎是一个非常棘手的问题 由于UML类图旨在显示类之间的源代码依赖关系,我想知道 如何基于以下代码绘制类图 徖 导入javax.swing.JPanel; 类WavPanel扩展了JPanel{UML和java类,uml,Uml,我确实需要你的宝贵帮助。 几周前,我用Java开发了一个小程序。 可能是一种错误的方法,但我并没有在脑海中用UML来解决这个问题,而是基于一个给定的想法,我 构建了一个功能齐全的软件,达到了预期的效果 程序本身由两个类和几个方法组成 现在我需要绘制相应的UML类图,这对我来说似乎是一个非常棘手的问题 由于UML类图旨在显示类之间的源代码依赖关系,我想知道 如何基于以下代码绘制类图 徖 导入javax.swing.JPanel; 类WavPanel扩展了JPanel{ List&l
List<Byte> audioBytes;
List<Line2D.Double> lines;
public WavPanel() {
super();
setBackground(Color.black);
resetWaveform();
}
public void resetWaveform() {
audioBytes = new ArrayList<Byte>();
lines = new ArrayList<Line2D.Double>();
repaint();
}
}
列出音频字节;
列出行;
公共事务委员会(){
超级();
挫折背景(颜色:黑色);
重置波形();
}
公共文件无效(){
audioBytes=新的ArrayList();
行=新的ArrayList();
重新油漆();
}
}
徖
简而言之,WavPanel类就是继承的一个例子。
JPanel类(包的一部分)充当超类。
我怎样才能解决这个问题?
我关心的是JPanel是一个类,它是包的一部分
此外,为了画一个好的类图,我在
我想也许我必须先做UML图,然后再写
关联代码
我写了几个方法(而不是类)和几个类,
这可能是UML的问题吗?
如果是这样,那就意味着重新设计整个软件
提前谢谢。非常感谢您的帮助。是的,您应该在编程之前做好计划。然而,一切都没有失去 您仍然可以在UML中使用JPanel,只需显示使用JPanel的子类的继承(使用白色菱形)。我喜欢使用绘制我所有的UML图,特别是因为(将来,当您首先使用UML时),您可以将您的图导出到Eclipse中 方法及其参数在UML图中的类中指定。您并不真正关心每个方法对类图的作用,只关心其大部分特性。关注显示类之间的关系,即使它们是库。不过,不要担心库中的所有单个方法……某些API可能已经解决了这一问题
你需要更多关于UML本身的帮助吗?让我知道,我可以添加到这个答案中,以澄清关于UML的任何其他问题,或者参考。您没有正确地考虑UML 如果您的应用程序工作正常,那么UML给您带来困难这一事实就不应该引起关注 UML是一种通信符号,仅此而已 编码之前不需要进行UML。UML根本不是一个需求。需要思考。如果创建UML有助于你思考,那么一定要这样做。但这不是必需的 您的解决方案很简单:要么将JPanel导入您的UML模型并将继承添加到类图中,要么为类图创建一个替代项 该计划本身由两部分组成 类和几个方法 不,该程序由您编写的两个类和几个核心Java类(例如,JPanel、List等)组成。您是否建议在类图中包含每个类,甚至Java核心类,这很重要?我不同意这一点。也许注意到您的WavPanel继承自JPanel会很有用,但我不会将java.lang.String添加到我创建的任何UML图中
我不认为UML对于一个由五个或更少类组成的解决方案是值得的。那些我能记住的。当我遇到一个比五个类更大的问题时,UML往往帮助更多。+1:UML建模是关于思考一个问题并传达解决方案的过程——不多也不少。在编写代码很久之后,创建UML模型对现有代码进行推理同样有用。听起来他需要它,无论是项目经理、同事还是教授?…我得到的印象是,他不仅仅是为了更好地理解自己的代码,但他并没有意识到这是一些高层的期望的一部分,现在他正争先恐后地抓住它。想法?非常感谢。事实上,我真的需要更多的帮助。非常感谢。事实上,我真的需要更多的帮助。如果有人能看看我的代码(我指的是整个程序代码)并帮我画类图,我会非常高兴。我的理解是,在编写代码之前使用UML是明智的,但我实际上做了相反的事情……不幸的是!现在我没有时间编辑整个代码以满足UML需求。我的电子邮件地址是:qxc@operamail.com谢谢。我很乐意帮你。我马上给你发封电子邮件。