Jaka jest różnica między rozszerzeniami i implementacjami w Javie?

Spisu treści:

Anonim

ten główna różnica między rozszerzeniami a implementacjami w Javie jest to słowo kluczowe „extends” pomaga korzystać z właściwości i metod superklasy, podczas gdy słowo kluczowe „implements” pozwala klasie zaimplementować interfejs.

Java to wysokopoziomowy język programowania ogólnego przeznaczenia opracowany przez Jamesa Goslinga. Służy do tworzenia różnych aplikacji, takich jak samodzielne, mobilne, internetowe itp. Jednym z głównych powodów popularności Java jest to, że obsługuje ona paradygmat programowania zorientowanego obiektowo (OOP). Korzystając z OOP, programiści mogą łatwo modelować rzeczywiste scenariusze w celu tworzenia rozwiązań. Dwie główne koncepcje w OOP to dziedziczenie i abstrakcje. Rozszerzenia i implementacje to słowa kluczowe powiązane z tymi dwoma paradygmatami.

Abstrakcja, rozszerza, implementuje, Dziedziczenie, Interfejs, Java, OOP

Co się rozszerza w Javie

Dziedziczenie umożliwia nowej klasie korzystanie z właściwości i metod już istniejącej klasy. Poprawia możliwość ponownego wykorzystania kodu. Innymi słowy, programista może tworzyć nowe klasy, korzystając z klas już istniejących. Dlatego nie trzeba pisać programów od początku.

Rysunek 1: Program Java z dziedziczeniem

W powyższym programie klasa Color posiada metodę o nazwie display. Klasa Green ma metodę o nazwie displayNewColor. Class Green rozszerza klasę Color. Dlatego kolor jest nadklasą, a zielony podklasą. W głównej metodzie obj jest obiektem typu Green. Ponieważ Green jest podklasą Color, może dziedziczyć właściwości i metody klasy Color. Dlatego programista może wywołać metodę displayNewColor, a także metodę wyświetlania za pomocą obiektu.

Co to jest implementacja w Javie

Abstrakcja pozwala ukryć szczegóły implementacji i wyświetlić użytkownikowi funkcjonalność. Interfejs jest sposobem na osiągnięcie abstrakcji i składa się z abstrakcyjnych metod. Metody abstrakcyjne nie mają definicji metod. Zawierają tylko deklaracje metod. Dlatego nie jest możliwe tworzenie obiektów za pomocą interfejsu.

Klasa może implementować metody abstrakcyjne w interfejsie. Kiedy klasa implementuje interfejs, używa słowa kluczowego implements. Interfejs nie może zaimplementować interfejsu, ponieważ nigdy nie może zaimplementować metody. Ponadto interfejs może jednocześnie rozszerzać jeden lub więcej interfejsów.

Rysunek 2: Program Java z interfejsami

W powyższym programie Draw jest interfejsem, który posiada abstrakcyjną metodę o nazwie draw. Nie ma definicji metody. Trójkąt to klasa, która implementuje interfejs Draw. Dlatego klasa Triangle implementuje metodę draw. Innymi słowy, dostarcza definicję metody do metody rysowania. W głównej metodzie obj jest obiektem typu Draw. Wreszcie programista może wywołać tę metodę.

Różnica między rozszerzeniami a implementacjami w Javie

Definicja

Extends to słowo kluczowe dostępne w języku programowania Java, które umożliwia klasie korzystanie z funkcji już istniejącej klasy, podczas gdy implements to słowo kluczowe dostępne w języku programowania Java, które umożliwia klasie dostarczanie definicji abstrakcyjnych metod interfejsu. Jest to więc podstawowa różnica między rozszerzeniami a implementacjami w Javie.

Klasa

Ponadto klasa może rozszerzać jedną nadklasę, podczas gdy klasa może implementować jeden lub więcej interfejsów.

Berło

Inną różnicą między rozszerzeniami a implementacjami w Javie jest to, że interfejs może rozszerzać jeden lub więcej interfejsów, podczas gdy interfejs nie może implementować innego interfejsu.

Powiązana koncepcja OOP

Podczas gdy słowo kluczowe extends jest związane z dziedziczeniem, słowo kluczowe Implements jest związane z abstrakcją. Jest to więc kolejna istotna różnica między rozszerzeniami a implementacjami w Javie.

Wniosek

Programista może używać extends i implementacji słów kluczowych w OOP. Główna różnica między extends a implements w Javie polega na tym, że słowo kluczowe extends pomaga używać właściwości i metod nadklasy, podczas gdy słowo kluczowe implements umożliwia klasie implementację interfejsu.

Referencja:

1. „Dziedziczenie w Javie – Javatpoint.” www.javatpoint.com, dostępne tutaj.2. „Interfejs w Javie – Javatpoint.” www.javatpoint.com, dostępne tutaj.

Jaka jest różnica między rozszerzeniami i implementacjami w Javie?