Създаване и използване на обекти - обясняване на примери
Имам проблем с два от основните примери в главата "Създаване и използване на обекти". конкретно става въпрос за "достъп до полета на обекта". В учебника имам слединя код, който под Intellij не работи.
public class CatManipulating {
    public static void main(String[] args) {
        Cat myCat= new Cat();
        myCat.name="Alfred";
        System.out.println("The name of my cat is %s.", myCat.name);   
    }
}
Cat и new Cat() светват в червено. Ако ги преименувам на CatManipulating нещата се оправят.
Също така name светва в червено и не се влияе, ако сменя Cat на CatManipulating
На следващия пример за извикване на метод на обект
public class CatManipulating {
    public static void main(String[] args) {
        CatManipulating myCat= new CatManipulating();
        myCat.name="Alfred";
        System.out.println("The name of my cat is %s.", myCat.name);
        myCat.sayMiau();
    }
}
се появява myCat.sayMiau(); и sayMiau е в червено както name. И сътвотено се принтира:
 The name of my cat is Alfred.
Cat Alfred said: Miauuuuuu!
Втория ред не мога да разбера как се принтира. Не съм използвам System.out.println за него и защо myCat.sayMiau(); принтира ...said: Miauuuuu!
Ако може да ми ги разясните, тези две примерчета. Благодаря.
Да действително, аз нямам другия клас и не ми беше станало ясно че те си взаймодействат. Когато класа Cat нещата се получиха. Имаше само проблем с myCat.name= "Alfred"; (пак ми го даваше в червено .name), но Intellig ми подсказа, че private String name; трябва да стане public String name; и проработи