Капсулиране - скриване на реализацията чрез ограничаване на достъпа
Абстракция - идея, която не е асоциирана с конкретно съществуване
Наследяване - изразява връзки между два обекта
Полиморфизъм - едно име много форми
Конструктурът е специален метод, който се изпълнява само веднъж при създаването на обект от съответния клас.
Има public модификатор за достъп. Имаето съвпада с името на класа. Може да имаме повече от един констрултор.
Конструкторът няма тип на връщан резултат.
Освобождаване на памет в Java се извършва автоматично чрез т.нар Garbage collection. При
необходимост се освобождават всички заети инеизползвани адреси в паметта и това води до унищожаване на екземпляри.
За да се гарантира чисто приключване на екземпляра преди
неговото унищожаване от Garbage collection, се използва
метода finilize()
С finalize() се задават действия по приключване на обект.
Може да се включи в кода на класа:
protected void finalize() {
…………. // код по приключване на класа
}
Чрез модификатора protected се предотвратява достъпа до
кода за приключване извън рамките на класа
Модификатор static може да бъде използван за атрибут или метод.
Статични членове на класа могат да бъдат достъпвани
директно чрез името на класа, а не чрез екземпляр на
класа. Те принадлежат на класа, не на екземпляра.
Когато се създава екземпляр всеки един екземпляр
„получава“ копие на нестатичните атрибутите на класа
(instance variables) (собствен набор от атрибути)
Статичните атрибути (class variables) са общи за всички
екземпляри (отделния екземпляр не получава свое собствено копие).
Статичните атрибути са глобални променливи.
Методи с променлив брой аргументи
(varargs)
Метод може да има променлив брой аргументи т.е. в
декларацията на метода не е указан точен брой
аргументи. ПР: int… Променливият брой аргументи трябва да е винаги
последен в списъка с параметри на метода
Интерфейс - по дефолт е package-private, иначе public. Има абстракни методи, които са public, static и final. Променливите са константи.
Масив е обект, който съдържа елементи от един и същ тип. Има фиксиран размер.
Final може да се използва за методи в клас:
Метод, деклариран като final, не може да бъде препокриван (overriding)
Метод се декларира като final когато се изисква той да не се променя
Final може да се използва за класове
Клас деклариран като final не може да бъде наследяван