Skip to main content

Тук може да намерите различни въпроси и отговори, свързани с курса

Дискусии

  • Здравейте,
    Бих искал да Ви попитам как да извикаме в main метода, който е статичен, нестатичните методи, които сме създали?

    Здравей,

    За да извикате нестатични методи в статичния main метод в Java (или в подобни статични контексти в други езици), трябва да създадете инстанция на класа, към който принадлежат тези методи. Ето как можете да направите това:

    public class Main {
        public static void main(String[] args) {
            // Създаване на инстанция на класа
            MyClass obj = new MyClass();
    
            // Извикване на нестатичния метод
            obj.myNonStaticMethod();
        }
    }

  • Note

    ✨ Тази дискусия беше създадена от Bozhidar Vasilev 48B през формата за обратна връзка. ✨

    Здравейте,

    Понеже разцъквах някакви примери

    Не мога просто да принтирам Стек или Опашка(До там стигнах), всеки път ли трябва да правя getter?

    Прикачвам screenshot за да стане малко по ясно:

    (не мога га да прикача снимка ето хиперлинк)

    https://imgur.com/a/3HWr0fA

    Благодаря предварително

    Здравей Божидар,

    По подразбиране, когато принтирате обект, се извиква методът toString() на класа му. Ако не сте го презаписали, той просто връща името на класа и хеша на обекта. В случая, това е Stack и Queue. Затова получавате тези странни изходи.

    За да не се налага да извиквате getter-ите, може да презапишете метода toString(), което ще позволи директното принтиране на обекта.

    Train.java

    @Override
    public String toString() {
        return train.toString();
    }

    след това извикването би било:

    Main.java

    public static void main(String[] args) {
        Train train = new Train();
        train.addWagon("Hopper");
        train.addWagon("Caboose");
        train.addWagon("Engine");
        System.out.println(train);
    }