首页 > 解决方案 > 如何转换为 OOD

问题描述

我是 Java 新手,刚刚进入第三周。我掌握了基础知识,但现在我们的教授要求更先进的技术,我有点挣扎。我遇到了一些问题,并被要求用 Java 创建程序。我成功地构建了这些程序,但他向所有人发出了通知:

“分配的所有程序都必须使用类和面向对象的设计。您需要创建一个具有构造函数、getter/setter、覆盖等的类”

所以我们必须放弃我们完成的工作,并用上述内容构建一个全新的程序。我的问题是我认为我已经在使用 OOD 并且使用 getter/setter 等使它看起来草率且不需要。我只是想念他的要求,我还没有得到他的澄清答复。任何帮助,将不胜感激。代码示例如下:

import java.util.Scanner;


public class SalaryCalculator {

    public static void main(String args[]) {

        Scanner input = new Scanner(System.in);

        double rate;
        double hours=0;
        double salary;

            while (hours != -1)

            {

                System.out.print("How many hours did you work? (If done type -1)");
            hours=input.nextDouble();


            if (hours!= -1)
            {
                System.out.print("Enter your hourly rate?");
                rate=input.nextDouble();


                salary = hours * rate;
                if (hours > 40)
                salary = salary + (hours - 40)* rate * 0.5;


                System.out.println("Your salary is $" +salary );
            }
                System.out.println();
            }   
                System.exit(0);
        }   
} 

测试程序:

import java.util.Scanner;

public class SalesCommission
{
public static void main(String[] args)
    {

    double total = 0;
        String choice = "";
    Scanner input = new Scanner(System.in);

        int count = 1;

    System.out.println("Enter each item value, when complete, enter -1 "
        + "to quit\nItem Value");
            while(!choice.equals("-1"))
    {
    System.out.println(count+" ");

        choice = input.next();

    total += Double.parseDouble(choice);
    }

total = total * 0.9;
total += 200;

System.out.println("Total commission is $"+total);
    }

}

标签: oopoverridingsettergetter

解决方案


推荐阅读