У меня есть пара ЧРЕЗВЫЧАЙНО основных вопросов по Java, которые я хотел бы, наконец, понять раз и навсегда. У меня есть следующий короткий фрагмент кода:
public class VeryBasicJava{
public static void main(String[] args){
int x = 3;
int y = 4;
swapMe(x, y);
}
private void swapMe(int a, int b){
int a;
int b;
int tmp = a;
this.a = b;
this.b = a;
}
}
Когда я компилирую, я получаю ужасную ошибку "не-статический метод swapMe(int,int)не может быть указан из статического контекста". Кроме того, я получаю «a уже определено в swapMe(int,int)» и «b уже определено в swapMe(int,int)»
. Что мне нужно, чтобы, наконец, пройти через мой толстый череп, ошибка "не-статического метода", как (почему)она возникает и как ее избежать.
Кроме того, я исходил из того, что вы можете делать то, что я пытаюсь сделать, с моими переменными «a» и «b» в методе «swapMe». Я подумал, что могу передать «a» и «b», но также создать новые переменные «a» и «b» и сослаться на них с помощью ключевого слова «this».
Я знаю, что это очень просто, но эти две «проблемы» являются двумя основными камнями преткновения, которые у меня есть с Java, и по какой-то причине я не могу их правильно изучить.
Спасибо всем, что нашли время, чтобы прочитать это. Хорошего дня.