Наследяване в Java
Наследяването е важна характеристика на обектно-ориентираното програмиране в Java. Тя позволява на един клас (детски клас) да наследява полетата и методите на друг клас (родителски клас). Например, може да искаме детски клас Куче да има присъщи черти от по-общ родителски клас Animal .
Когато дефинираме детски клас в Java, използваме ключовата дума extends за наследяване от родителски клас.
Основен () метод в Java
В прости Java програми можете да работите само с един клас и един файл. Тъй като обаче програмите ви стават по-сложни, ще работите с множество класове, всеки от които изисква собствен файл. Само един от тези файлове в пакета Java изисква метод main () и това е файлът, който ще се изпълнява в пакета.
Например, да кажем, че имаме два файла в нашия Java пакет за два различни класа:
- Shape, родителският клас.
- Square, детският клас.
Ако Java файлът, съдържащ нашия клас Shape, е единственият с метод main (), това е файлът, който ще се изпълни за нашия Java пакет.
super () в Java
В Java детски клас наследява полетата и методите на родителя си, което означава, че наследява и конструктора на родителя. Понякога може да се наложи да модифицираме конструктора, като в този случай можем да използваме метода super (), който действа като конструктора родител в конструктора на детски клас.
Като алтернатива можем също така да заменим конструктора на родителски клас, като напишем нов конструктор за дъщерния клас.
Защитени и заключителни ключови думи в Java
Когато създаваме класове в Java, понякога може да искаме да контролираме достъпа на детски клас до членовете на родителския клас. Можем да използваме защитените и крайни ключови думи, за да направим точно това.
protected поддържа член на родителски клас достъпен за своите дъщерни класове, до файлове в собствения си пакет и от подкласове на този клас в друг пакет.
Добавянето на final преди модификатора за достъп на метод на родителски клас го прави така, че всички дъщерни класове да не могат да променят този метод - той е неизменим.
Полиморфизъм в Java
Java включва обектно-ориентирания принцип на програмиране на полиморфизма.
Полиморфизмът позволява на детски клас да споделя информацията и поведението на своя родителски клас, като същевременно включва собствената си функционалност. Това позволява предимствата на опростения синтаксис и намаленото когнитивно претоварване за разработчиците.
Замяна на метода в Java
В Java можем лесно да заменим методите на родителски клас в детски клас. Заместването на метод е полезно, когато искаме методът ни на детски клас да има същото име като метода на родителски клас, но да се държи малко по-различно.
За да заменим метода на родителски клас в детски клас, трябва да се уверим, че методът на дъщерния клас има следното общо с метода на родителския клас:
- Име на метода
- Тип връщане
- Брой и вид параметри
Освен това трябва да включим ключовата дума @Override над нашия метод на дъщерния клас, за да посочим на компилатора, че искаме да заменим метод в родителския клас.
- Събиране на листа от репички - научете кога и да съберете зелените репички
- Честит ден на RDN! Научете какво диетолозите ОБИЧАТ за работата си - Шарън Палмър, The Plant Powered
- Ниска енергия Научете как да го оборотите
- Факти за лаймската болест - Научете повече за симптомите, лечението и профилактиката на лаймската болест
- Как можете да помогнете на детето си с тръба да се научи да яде