W dziedzinie programowania obiektowego, dziedziczenie jest kluczowym zagadnieniem. Dzięki niemu możesz dziedziczyć z istniejących klas i dodawać nowe funkcjonalności w podklasach (subklasach). W tym tutorialu skupisz się na stworzeniu konkretnej podklasy, "ciężarówki", aby w praktyczny sposób nauczyć się podstaw dziedziczenia w C#.
Najważniejsze spostrzeżenia
- Dziedziczenie umożliwia stworzenie podklasy na podstawie klasy bazowej.
- Konstruktory są kluczowe dla określenia specyficznych właściwości podklasy.
- Metody klasy bazowej mogą być nadpisywane w podklasie, aby zdefiniować specyficzne zachowanie.
Przewodnik krok po kroku
Krok 1: Użyj eksploratora projektu i dodaj klasę
Aby stworzyć podklasę ciężarówki, otwórz eksplorator projektu. Kliknij prawym przyciskiem myszy na swój projekt i wybierz opcję "Dodaj". Wybierz dodanie nowej klasy i nazwij ją "ciężarówka". Klasa ta będzie zawierać wszystkie właściwości i metody specyficzne dla ciężarówek.

Krok 2: Utwórz prywatną zmienną
W klasie ciężarówki, następnie utwórz prywatną zmienną, która będzie przechowywać liczbę osi. Informacja ta jest istotna, ponieważ odgrywa rolę w obliczaniu opłat drogowych. Możesz nazwać tę zmienną "liczbaOsi". W ten sposób pierwsza część specyficznych właściwości twojej ciężarówki zostanie zdefiniowana.
Krok 3: Utwórz konstruktory podklasy
Teraz nadszedł czas na stworzenie konstruktorów swojej klasy ciężarówki. Zacznij od metody konstruktora z przeciążeniem. Ta metoda akceptuje parametry takie jak model, zużycie i pojemność zbiornika. Przekazujesz te wartości do metody konstruktora klasy bazowej Samochód. Musisz również upewnić się, że liczba osi zostanie zdefiniowana.
Krok 4: Dziedziczenie podklasy z klasy bazowej
Aby upewnić się, że klasa ciężarówki jest rozpoznawana jako podklasa klasy bazowej Samochód, dodaj w nagłówku klasy ciężarówki klasę bazową z dwukropkiem. W ten sposób nawiążesz relację między klasą ciężarówki a klasą bazową Samochód, co da ci dostęp do jej metod i właściwości.

Krok 5: Utwórz drugą metodę konstruktora podklasy
Oprócz metody z przeciążeniem utwórz zwykłą metodę konstruktora. Powinna ona mieć model, zużycie i pojemność zbiornika jako parametry, ale nie powinna przyjmować liczby osi jako wejścia. Zamiast tego liczba osi zostanie domyślnie ustawiona na dwa, aby pokryć najczęstszy scenariusz dla ciężarówek.
Krok 6: Nadpisz metodę jazdy
Następnym krokiem jest nadpisanie metody jazdy, która jest zdefiniowana w klasie bazowej Samochód. W tej metodzie obliczasz koszty jazdy na podstawie pokonanej odległości, parametrów pojazdu oraz tego, czy ciężarówka jechała po autostradzie. Musisz upewnić się, że koszty przejazdu są obliczane w zależności od liczby osi.
Krok 7: Użycie instrukcji Switch do obliczenia opłat
Możesz wprowadzić instrukcję Switch, która obsłuży różne przypadki dotyczące liczby osi. Jest to ważne, ponieważ ciężarówki o różnej liczbie osi mają różne stawki opłat. Możesz także użyć alternatywnych struktur kontrolnych, ale instrukcja Switch zapewni przejrzystość i czytelność.
Krok 8: Wywołanie konstruktora podklasy
Teraz, gdy twoja klasa ciężarówki jest zdefiniowana, możesz utworzyć instancję klasy w programie CS. W tym celu wywołujesz konstruktor klasy ciężarówki, aby stworzyć nowy obiekt ciężarówki, który zawiera wszystkie wymagane parametry. Ustalasz również, ile ciężarówka zużywa i jakie ma specyficzne właściwości.

Krok 9: Jazda ciężarówki i wyświetlanie kosztów podróży
Po zainicjowaniu ciężarówki, pozwól jej jechać, wywołując metodę jazdy. Przekaż pokonaną odległość oraz to, czy ciężarówka jechała po autostradzie, czy nie. Na koniec wyświetl koszty podróży, które zostały obliczone na podstawie liczby osi w metodzie, w konsoli.

Podsumowanie - Tworzenie podklasy ciężarówki w C#
W tym tutorialu nauczyłeś się, jak stworzyć podklasę ciężarówki w C#. Poznałeś i zastosowałeś podstawy dziedziczenia, implementując prywatne zmienne i konstruktory dla podklasy. Udało ci się nadpisać metody i zdefiniować specyficzne zachowanie dla ciężarówek. Dzięki tym umiejętnościom możesz teraz pisać bardziej złożone programy obiektowe w C#.
Najczęściej zadawane pytania
Jaka jest różnica między klasą a podklasą?Klasa to ogólny model szablonu, podczas gdy podklasa dziedziczy specyficzne właściwości i metody z klasy bazowej.
Jak utworzyć konstruktor w C#?Konstruktor jest definiowany przez klasę, którą tworzy, i nosi tę samą nazwę co klasa, bez wartości zwrotnej.
Czy mogę nadpisać metodę w podklasie wiele razy?Tak, możesz nadpisać metodę w podklasie. Jest to przydatne, aby zdefiniować specyficzne zachowanie dla różnych podklas.
Jak używać instrukcji Switch w C#?Instrukcja Switch umożliwia kontrolowanie różnych ścieżek kodu w zależności od wartości zmiennej. To efektywny sposób na uniknięcie złożonych rozwidleń.