Co to jest rzutowanie typów w Javie | Zrozumienie rzutowania typu jako początkujący
Opublikowany: 2020-03-27Programowanie to zestaw instrukcji w specjalnym języku, które są przekazywane komputerowi w celu wykonania zestawu zadań. Chociaż wiele osób używa tych języków do celów zawodowych, niektórzy programiści postrzegają je jako sposób na zabawę z danymi i tworzenie funkcji, rozwiązań i analiz; nigdy nie myśleli, że to możliwe.
Studenci nauk ścisłych doskonale zdają sobie sprawę, że istnieją różne języki programowania, a jeden z najbardziej znanych w Javie. Żaden student inżynierii komputerowej nie może pozostać z dala od tego języka. Co ważniejsze, profesjonaliści mogą samodzielnie uczyć się języka programowania.
Co ciekawe, Java to język programowania, który ma kilka typów danych, które mogą rzucić wyzwanie i zainteresować programistów. Jednak znajomość typów danych jest ważna, aby bawić się danymi i tworzyć instrukcje zgodnie z celem końcowym. W czasie kodowania programista może potrzebować zmienić typy danych, aby wiedzieć, jak zmienna działa w kodzie — to testowanie zmiennej danych jest znane jako rzutowanie typu.
Mówiąc prościej, programiści komputerowi zmieniają jeden typ danych na inny, aby funkcja poprawnie przetwarzała zmienną. Typowe przykłady obejmują konwersję liczby zmiennoprzecinkowej na liczbę całkowitą lub liczbę całkowitą na ciąg.
Spis treści
Zrozumienie rzutowania typów w Javie
Teraz, gdy mechanika rzutowania typów jest jasna, nadszedł czas, aby zwrócić uwagę na rzutowanie typów w Javie.
Rzutowanie typów lub konwersja typów to proces przypisywania wartości typu danych pierwotnych do innego typu danych pierwotnych. Programiści muszą wcześniej sprawdzić zgodność typu danych, który przypisują, z innym typem danych. Rzutowanie typów jest wykonywane automatycznie, jeśli istnieje zgodność między dwoma typami danych. Ten typ konwersji nazywa się automatyczną konwersją typu. Z drugiej strony, w przypadku braku zgodności między dwoma typami danych, konwersja lub rzutowanie odbywa się jawnie.

Rzutowanie typów w Javie to także rzutowanie klasy lub interfejsu na inną klasę lub interfejs. Java obsługuje zarówno polimorfizm, jak i dziedziczenie, ponieważ jest językiem programowania zorientowanym obiektowo. Mogą wystąpić przypadki, gdy obiekt SubClass jest wskazywany jako zmienna referencyjna SuperClass. Jednak kompilator Javy nie będzie o tym wiedział. Tak więc wywoływanie metody, która została zadeklarowana w SubClass jest bezużyteczne. Aby było to przydatne ćwiczenie, musisz najpierw rzutować ten obiekt SubClass na typ, pod którym pierwotnie istniał. To świetny przykład na to, jak działa rzutowanie typów w Javie.
Przeczytaj: Przyszły zakres programistów Full Stack
Znajomość rzutowania typów nie wystarczy, ponieważ równie ważne jest, aby być świadomym reguł Javy, których należy przestrzegać. Jedna z takich reguł mówi, że interfejsy lub klasy należące do jednej hierarchii typów mogą być konwertowane lub rzutowane na siebie. Jeśli obiekty bez tej samej hierarchii typów lub relacji nadrzędny-podrzędny zostaną przekonwertowane, na ekranie zostanie wyświetlony błąd w czasie kompilacji.
Spójrzmy na inny scenariusz, z którym możesz się zmierzyć jako programista, wybierając dwa obiekty należące do tej samej hierarchii typów. Ale jeśli typ obiektu, który rzutujesz, i typ obiektu, na który go rzutujesz, nie są takie same, otrzymasz wyjątek ClassCastException.
Najbardziej zaskakujące jest to, że wielu programistów i programistów nie zdaje sobie sprawy z wagi typowania. Rzutowanie typów zapewnia dostęp do metod i pól, w których zadeklarowana jest klasa docelowa lub typ. Nie ma innego sposobu, aby uzyskać do nich dostęp.

Teraz spójrzmy na konwersję różnych typów lub rzutowanie w Javie
Istnieją dwa typy konwersji lub rzutowania, a mianowicie rzutowanie typu pierwotnego i rzutowanie typu referencyjnego.
Rodzaje przesyłania w Javie
Odlewanie typu prymitywnego
Pozwala programiście na przerzucenie wartości jednego prymitywu na inny. Siedem pierwotnych wartości typu danych to Boolean, Byte, Char, Short, Int, Long, Float i Double. Istnieją dwa podtypy rzutowania typu pierwotnego:
1. Rozszerzanie rzutowania lub niejawna konwersja:
Rzutowanie poszerzające obejmuje rzutowanie typu danych o niższej wartości na typ danych o wyższej wartości (typ danych poszerzających) bez utraty informacji. Jest to duże ryzyko w precyzji odlewania, gdy rozważa się szerszą konwersję między różnymi typami danych liczbowych. Możliwa jest utrata małych bitów informacji lub wartości.
Przeczytaj także: Pomysły i tematy projektów Full Stack
2. Zawężanie rzutowania lub jawna konwersja:
Jest to przeciwieństwo poszerzania rzutów. Polega na rzutowaniu typu danych o wyższej wartości na typ danych o niższej wartości (typ danych Narrower). Nieostrożne postępowanie może prowadzić do utraty informacji.
Niejawna konwersja nie wymaga od dewelopera podania danych wejściowych i jest wykonywana automatycznie. Z drugiej strony, jawna konwersja jest wykonywana przez samego programistę.

Odlewanie typu referencyjnego
Jeśli dwa różne typy klas są skojarzone ze sobą przez dziedziczenie, a jedna z tych klas jest podklasą innej, wówczas klasy te mogą podlegać rzutowaniu. Ważne jest, aby rzutowanie było zgodne z regułami czasu wykonywania, a także regułami czasu kompilacji w Javie. Odlewanie typu referencyjnego dzieli się dalej na dwa typy:
1. Wyrzucanie:
Upcasing obejmuje konwersję obiektu SubType na obiekt SuperType. Java umożliwia przypisanie obiektu bez konieczności dodawania jawnego rzutowania. Kompilator wiedziałby, co się dzieje, i rzuciłby wartość SubType na SuperType. W ten sposób obiekt zostaje sprowadzony do podstawowego poziomu. Deweloperzy mogą dodać wyraźną obsadę, nie martwiąc się o żadne problemy.
2. Obniżanie:
Rzutowanie w dół obejmuje konwersję obiektu SuperType na obiekt Subtype. Jest to najczęściej używane rzutowanie, w którym kompilatorowi komunikuje się, że wartość obiektu podstawowego nie jest jego własnością, ale obiektu SuperType.
Zawijanie
Aby się wylogować, aby zostać odnoszącym sukcesy programistą lub programistą, konieczne jest nauczenie się rzutowania typów Java. Celem jest zdefiniowanie funkcji, a następnie zapewnienie, że zmienne w komunikacji działają zgodnie z funkcjonalnością końcową. Znajomość i opanowanie różnych rodzajów metodologii rzutowania znacznie pomaga programiście w dostarczaniu najbardziej złożonych funkcji. Mówiąc wprost, jest to podstawa, dzięki której duże firmy i marki mogą zwiększyć zaangażowanie użytkowników końcowych.
Jeśli chcesz dowiedzieć się więcej o tworzeniu pełnego stosu, zapoznaj się z dyplomem PG upGrad i IIIT-B z pełnego stosu oprogramowania, który jest przeznaczony dla pracujących profesjonalistów i oferuje ponad 500 godzin rygorystycznego szkolenia, ponad 9 projektów i zadań, IIIT -B Status absolwenta, praktyczne praktyczne projekty zwieńczenia i pomoc w pracy z najlepszymi firmami.