Как передать экземпляр класса в качестве аргумента для метода этого класса?

Допустим, у меня есть этот код. При использовании экземпляра ClassA, как передать экземпляр класса методу methodA?

public class ClassA {

    public static int methodA(ClassA class) {

        return 1;
    }
}

//This is wrong but this is what I'm trying to do
public class Main {

    public static void main(String [] args) {

        ClassA classa = new ClassA();
        classa.methodA(classa);
    }
}
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
158
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Способ добиться этого правильный. Просто используйте другое имя, потому что class - это зарезервированное ключевое слово для определения класса.

public static int methodA(ClassA instance) {
    return 1;
}

Что, если я хочу вызвать метод из метода B, также внутри этого класса? Есть ли способ сделать это?

kryz 22.10.2018 01:31

@kryz и doe methodB как выглядит?

azro 22.10.2018 13:55

Ваш подход работает, но вы не должны использовать ключевое слово class в качестве имени переменной. Пытаться

public class ClassA {
    public static int methodA(ClassA clazz) {
        return 1;
    }
}

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