- Stwórz nowy projekt, w nim wykonaj czynności:
- Stwórz klasę
Car
, w której będzie można przechowywać markę samochodu i rok produkcji (zmienne marka i rok) (zapisz ją w plikuCar.cs
). - Zmodyfikuj klasę
Car
, aby wszystkie zmienne były zadeklarowane jako prywatne. - Stwórz nowy obiekt klasy
Car
w plikuProgram.cs
jakocar1
, ustaw dla niego dowolną markę i rok produkcji, wyświetl to na ekranie. Popraw kod, aby program działał poprawnie. - Stwórz drugi obiekt
car2
typuCar
, przypisz mu dowolne wartości i wyświetl na ekranie. - Przypisz do siebie wartości
car1
icar2
(car1 = car2
) i ponownie sprawdź na ekranie jakie wartości otrzymasz. - Zakomentuj kod do dwóch ostatnich punktów.
- Utwórz prywatne pola klasy
Car
o nazwie:model
,iloscDrzwi
,pojemnoscSilnika
oraz publicznesrednieSpalanie
. Narysuj dla klasyCar
diagram UML (kolejne czynności uzupełniaj na diagramie). - Utwórz prywatną metodę
ObliczSpalanie
zwracającej wartość typu double i przyjmującej parametrdlugoscTrasy
typudouble
. Metoda ta ma obliczać spalanie samochodu na podstawie podanej wartości długości trasy i wartości pola srednieSpalanie. Spalanie obliczamy według wzoru: spalanie = (srednieSpalanie * dlugoscTrasy) - Utwórz publiczną metodę
ObliczKosztPrzejazdu
zwracającej wartość typudouble
i przyjmującej parametrydlugoscTrasy
typudouble
icenaPaliwa
typudouble
. Metoda ta ma obliczać koszt przejazdu na trasie o podanej długości, zakładając podaną cenę paliwa za litr. Metoda ta ma wykorzystywać prywatną metodęObliczSpalanie
. Koszt przejazdu obliczamy według wzoru: kosztPrzejazdu = spalanie * cenaPaliwa.
- Napisz klasę
Osoba
, której diagram jest następujący:
Umieść klasę w pliku Osoba.cs.
- W pliku
Program.cs
stwórz obiektdyrektor
i przypisz mu dowolne atrybuty. Wyświetl na ekranie jest imię, nazwisko i liczbę lat. - W pliku
Osoba.cs
zmień dostępy do pól na private, internal, protected - co się zmieni?
- Wykonaj w ramach jednego projektu następujące polecenia:
- Stwórz klasę
Car
. - Stwórz w niej nowe prywatne pola
double pojemonoscSilnika
,string marka
. - Stwórz obiekt typu
Car
, czy masz dostęp do jego pól? czy możesz zmienić wartości? (nie zmieniaj pól klasy na publiczne). - Do klasy
Car
dodaj samodzielnie napisany konstruktor bez parametru. - Przeciąż konstruktor tworząc nowy:
Car(double pojemonoscSilnika, string marka)
. Niech ten parametryczny konstruktor ustawia wartości pól pojemność silnika oraz marka. (użyj inicjalizatorathis
). - Stwórz nowy obiekt za pomocą konstruktora parametrycznego.
- Za pomocą debuggera sprawdź jakie warości na prywatnych polach ma obiekt numer 1, a jakie obiekt 2.
- Zmień modyfikatory dostępu konstruktorów na private. Czy jest możliwe utworzenie nowego obiektu tej klasy? Co się stało z konstruktorem domyślnym?
- W klasie
Car
stwórz metodęCreate()
, która będzie zwracać obiekt. - Stwórz obiekt dzięki metodzie
Create()
(pamiętałeś o dodaniustatic
do metody? ) - Utwórz statyczne pole int
iloscKol
. Następnie stwórz statyczny konstruktor ustawiający wartość tego pola na 4. Jak możesz odwołać się do pola? czy możesz go zmodyfikować? co się zdanie jak dodaszreadonly
? - Uruchom program i w debuggerze sprawdź jaką wartość pola
iloscKol
ma wczesniej stworzony obiekt. - Do klasy
Car
dodaj destruktor~Car()
, wewnątrz dodaj następujący kod:
Console.WriteLine(„Zwalniam pamięć”);
Console.ReadKey();
- Uruchom program i zwróć uwagę kiedy następuje zwolnienie pamięci.
- Dodaj w klasie
Car
stałe pole iloscDrzwi i ustaw mu wartość 4. Jak możesz się do niego odnieść? czy możesz go zmodyfikować?
- Stwórz klasę
Matematyka
i dodaj w niej statyczne polepi
i nadaj mu wartość 3.14. Następnie w tej klasie dodaj statyczne metody z 1 parametrem pozwalające obliczyć pole i obwód koła. W klasieProgram
i metodzieMain
przećwiczyć użycie tych metod. - W klasie
Program
poza metodąMain
dodaj kod:
static string OpiszTyp()
{
return "Metoda bez argumentów";
}
static string OpiszTyp(int x)
{
return "Liczba całkowita";
}
static string OpiszTyp(string x)
{
return "Łańcuch znaków";
}
static string OpiszTyp(int x, int y)
{
return "Dwie liczby calkowite";
}
W metodzie Main
przetestuj działanie tych metod.
- Napisz klasę
Produkt
(nazwa, cena) orazKoszyk
(lista towarów). Dorób też metodę dodającą towar do koszyka oraz funkcję pokazującą ilość elementów w koszyku i sumę cen. Zasymuluj robienie zakupów. - Napisać klasę
Zespolone
opisujące operacje na liczbach zespolonych. Pokazać w main podstawowe obliczenia. - Stwórz klasę
Konto
z kilkoma polami, metodami i konstruktorami (saldo początkowe, końcowe, przelew miedzy kontami, przelew zewnętrzny, wplata, wyplata itd.) Następnie utwórz co najmniej 3 obiekty i wykonaj kilka metody na nich. - Stwórz klasę
Telefon
, która będzie zawierała parametry do obsługi bilingu (usługa prepaid).Dodatkowo ma zawierać metody, konstruktory (saldo początkowe, końcowe, doładowanie, wysłanie smsa, rozmowa, połączenie z internetem, usługi premium). Potem stwórz kilka obiektów i wykonaj na nich metody. Na ekranie wyświetl „bilingi” dla stworzonych obiektów.