Я научился вызывать методы и даже переменные между двумя классами. Я хотел знать, можно ли перемещать значения из одного класса в другой без использования наследования. Вот пример:
- Я создаю два класса: class1 и class2.
- Я ввожу переменную со значением в class1.
- Переместите значение переменной в class2.
- Пусть значение будет проверено операторами if в class2.
- Вывод в классе 2 можно переместить в класс 1 или метод с выводом в классе 2 можно вызвать в классе 1.
Это не настоящая архитектура программы, это просто для моих учебных целей. Спасибо. Обновление: меня попросили опубликовать код того, что я сделал, чтобы показать идею выше. Вот один класс:
class MainClass
{
public static void main(String[] args)
{
System.out.println("You have entered: " + args[0]);
static int num = Integer.parseInt(args[0]);
SubClass.calc(); //I believe I override it by passing value to a method within SubClass
}
}
Вот второй класс:
class SubClass
{
public static void calc()
{
System.out.println("This is the output" + MainClass.num);
}
}
Я попытался переместить свое значение в args[0] из MainClass в SubClass, но получаю сообщение об ошибке, когда пытаюсь преобразовать его из строки в тип данных int:
pavel@pavel-OptiPlex-GX270:~/myjava$ javac MainClass.java
MainClass.java:9: error: cannot find symbol
static int num = Integer.parseInt(args[0]);
^
symbol: variable args
location: class MainClass
1 error
Могу ли я что-нибудь сделать, чтобы решить проблему?