Вызов другого класса в Java

Хорошо, я хочу создать 2 класса. Один из них является основным классом, а второй - создать сторожевой элемент управления цикла, а затем возвращать его общее количество, пока пользователь не введет 0. Я не смог заставить его работать. Я не знаю, как вызвать другой класс, потому что я очень плохо знаком с Java. Вот что у меня есть.

Класс 1:

import java.util.*;

public class HW3 {

public static void main(String[] args) {

    OrderDetails object = new OrderDetails();
    int n;
    n = object.OrderDetails(0);
    System.out.println(n);

Класс 2:

import java.util.*;

public class OrderDetails {

Scanner input = new Scanner(System.in);

int total=0;

int n1;

public int OrderDetails(int n1){

    while (n1 != 0){

        System.out.println("Enter your number");

        n1 = input.nextInt();

        total += n1;

    } // End while loop

    return total;

} // End method

2 ответа

Решение

Прежде всего

public int OrderDetails(int n1)

Вы используете имя класса в качестве имени метода, оно будет работать и работать, но некоторые IDE будут жаловаться на это, что вы используете имя класса в качестве метода, который вам нужно изменить в качестве конструктора.

object.OrderDetails(0);

Теперь проблема заключается в том, что вы передаете 0, который нарушает оператор while, вместо этого передаете другое значение, скажем, -1, так что вы попадете внутрь цикла while и получите некоторые значения от пользователя.

образец:

object.OrderDetails(-1); //change the name of your method

N1 в области видимости класса является переменной экземпляра, но параметр n1 в методе является локальной областью видимости и поэтому скрывает переменную экземпляра. Кроме того, метод назван так же, как класс, что является плохой практикой.

Ничего из этого не является проблемой - реальная проблема заключается в том, что вызывающая сторона вызывает с одним значением, которое не позволит ему войти в цикл while. Если вы звонили с чем-то отличным от нуля, вы увидите, что это даст желаемый результат.

Другие вопросы по тегам