Я узнал, как вызывать методы и даже переменные между двумя классами. Я хотел знать, можете ли вы перемещать значения из одного класса в другой без использования наследования. Вот пример:Можно ли переместить значения переменных из одного класса в другой класс без наследования в java?
- Создаю два класса: class1 и class2.
- Я ввожу переменную со значением в class1.
- Переместить значение переменной в класс2.
- Пусть значение проверяется операторами if в классе2.
- Вывод в классе 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);
}
}
Я попытался пошевелить значение в аргументах [0] от MainClass подкласса, но я получаю сообщение об ошибке при попытке для передачи его из строки в тип int:
[email protected]:~/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
Есть ли что-нибудь, что я могу сделать для решения проблемы?
Pavel, вам необходимо опубликовать код, чтобы показать нам, что вы пробовали. И вам нужно отправить его в stackoverflow, а не здесь. –
Привет @pavelexpertov, я не знаю, чего вы пытаетесь достичь, но этот путь не похож на хороший. Попробуйте реорганизовать свой код так, чтобы он мог обмениваться переданными параметрами. – Joqus
У меня есть несколько ответов ниже. Если вы не видите, я думаю, что мой пост переместился в stackoverflow. И по какой-то странной причине я вижу свой пост на сайте программиста, а также файл stackoverflow. – pavelexpertov