Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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 为Shoe类创建UML图_Java_Class_Constructor_Uml - Fatal编程技术网

Java 为Shoe类创建UML图

Java 为Shoe类创建UML图,java,class,constructor,uml,Java,Class,Constructor,Uml,我正在参加一个在线课程,我在这个作业上遇到了一些问题 我在第1部分“一个默认构造函数将不存在的鞋子的每个属性初始化为合理的默认值”中遇到了问题 以下是我所拥有的: 鞋 (-)样式:字符串 (-)颜色:字符串 (-)大小:整数 (+)集合样式(s:字符串) (+)setColor(c:字符串) (+)设置大小(z:整数) (+)getSyle():字符串 (+)getColor():字符串 (+)getSize():整数 任务: 这家华丽闪亮的鞋店出售不同款式的鞋子,如凉鞋和步行鞋。每种款式的

我正在参加一个在线课程,我在这个作业上遇到了一些问题

我在第1部分“一个默认构造函数将不存在的鞋子的每个属性初始化为合理的默认值”中遇到了问题

以下是我所拥有的:


(-)样式:字符串

(-)颜色:字符串

(-)大小:整数


(+)集合样式(s:字符串)

(+)setColor(c:字符串)

(+)设置大小(z:整数)

(+)getSyle():字符串

(+)getColor():字符串

(+)getSize():整数

任务:

这家华丽闪亮的鞋店出售不同款式的鞋子,如凉鞋和步行鞋。每种款式的鞋子都有不同的颜色,如棕色和黑色。可供选择的鞋码从5号到11号不等,包括全码和半码。通过执行以下操作设计面向对象的计算机程序:

第一部分

。为Shoe类创建类图,该类图包含鞋的样式、鞋的颜色和尺寸。该样式的有效值示例为“凉鞋”和“步行”。颜色的有效值示例为“棕色”和“黑色”。尺寸的有效值示例为6.5和9.0。确保为属性选择最合适的数据类型。对于此类定义,包括以下内容:

  • 默认构造函数,它将不存在的鞋的每个属性初始化为某个合理的默认值
  • 另一个构造函数方法,每个数据成员都有一个参数。此构造函数将每个属性初始化为实例化此类型的对象时提供的值
  • 每个属性的访问器和变异器方法。 第II部—
为在第一部分的类图中设计的Shoe类编写伪代码。 第III部—

使用main()模块为shoe store的应用程序编写伪代码,该模块实例化shoe类的两个对象。第一个对象应命名为nerdShoes,并使用默认构造函数。第二个对象应命名为coolShoes,并使用第二个构造函数将样式初始化为“凉鞋”,颜色初始化为“棕色”,大小初始化为8.5。在main()方法中按以下指定的顺序包含以下说明: 将书呆子鞋的颜色设置为“棕褐色”的呼叫。 将书呆子鞋的风格设置为“行走”的通话 将Nerdshoe的大小设置为9.5的调用。 使用适当的方法调用显示nerdShoes样式的语句。 呼叫将coolShoes的颜色更改为“紫色”。
使用适当的方法调用显示coolShoes样式的语句。

默认构造函数通过不接受任何参数来标识。我对默认值的猜测是,它们是变量的一些占位符值。可能的解决方案如下所示:

public Shoe(){ this.style = ""; this.color = ""; this.size = 0; }

通常我不会用完整的代码来回答,因为这是你需要做的事情。当你自己尝试时,你会学到更多更好的东西

但我会发送我的建议,因为我喜欢UML问题…(尽管这是其中简单的UML)

但我想知道为什么使用大小作为整数?你提到你需要半个大小?我的建议是使用例如
float

package theshowyshinyshoestore;

public class Shoe {
  String style;
  float size;
  String color;

  public Shoe() {
      setStyle("unknown");
      setSize(0);
      setColor("unknown");
  }

  public Shoe(String style, float size, String color) {
      setStyle(style);
      setSize(size);
      setColor(color);
  }

  public void setStyle( String style ) {
      //perform checks for valid style
      //...
      this.style = style;
  }

  public void setSize( float size ) {
      //perform checks for valid size
      //...
      this.size = size;
  }

  public void setColor( String color ) {
      //perform checks for valid colors
      //...
      this.color = color;
  }

  public String getStyle() {
    return this.style;
  }

  public float getSize() {
    return this.size;
  }

  public String getColor() {
    return this.color;
  }


  public String toString() {
    return "Style: " + this.style + " Size: " + this.size + " Color: " + this.color;
  }


  public static void main(String[] argv) {
    Shoe nerdShoes = new Shoe();
    Shoe coolShoes = new Shoe("sandals", 8.5f, "brown");
    System.out.println( "nerdShoes: " + nerdShoes );
    System.out.println( "coolShoes: " + coolShoes );

    nerdShoes.setColor("tan");
    nerdShoes.setStyle("walking");
    nerdShoes.setSize(9.5f);

    coolShoes.setColor("purple");

    System.out.println( "nerdShoes: " + nerdShoes );

    System.out.println( "nerdShoes style: " + nerdShoes.getStyle() );
    System.out.println( "coolShoes style: " + coolShoes.getStyle() );
  }

}


如果你能把你的问题简化成一个简单的问题,而不是把你的整个作业都发给我们,那就太好了。谢谢。