Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Klasy abstrakcyjne i interfejsy. Metoda abstrakcyjna – metoda nie zawierająca kodu: abstract public void ZamazSlad(); // nie ma nawiasów {} abstract public.

Podobne prezentacje


Prezentacja na temat: "Klasy abstrakcyjne i interfejsy. Metoda abstrakcyjna – metoda nie zawierająca kodu: abstract public void ZamazSlad(); // nie ma nawiasów {} abstract public."— Zapis prezentacji:

1 Klasy abstrakcyjne i interfejsy

2 Metoda abstrakcyjna – metoda nie zawierająca kodu: abstract public void ZamazSlad(); // nie ma nawiasów {} abstract public void ZamazSlad(); // nie ma nawiasów {} Jeżeli klasa zawiera chociaż jedną metodę abstrakcyjną, to też jest abstrakcyjna: Jeżeli klasa zawiera chociaż jedną metodę abstrakcyjną, to też jest abstrakcyjna: Abstract public class Figura { …………. …………. abstract public void ZamazSlad(); abstract public void ZamazSlad();} W oparciu o klasę abstrakcyjną nie można utworzyć obiektu: W oparciu o klasę abstrakcyjną nie można utworzyć obiektu: figura PR1 = new prostokat(); // poprawnie – klasa prostokat nie // jest abstrakcyjna // jest abstrakcyjna figura PR2 = new figura(); // źle – klasa figura jest abstrakcyjna Po co te klasy abstrakcyjne? Po co te klasy abstrakcyjne? 1. Umożliwiają zgromadzenie w jednym miejscu nagłówków wszystkich (wybranych) metod w klasach dziedziczących 2. Wymuszają definiowanie w każdej z klas dziedziczących metody z kodem odpowiadającej metodzie abstrakcyjnej

3 Klasa zamknięta – przeciwieństwo klasy abstrakcyjnej. Klasy abstrakcyjne służą przede wszystkim jako klasy abstrakcyjne służą przede wszystkim jako klasy bazowe, to po klasach zamkniętych nie można bazowe, to po klasach zamkniętych nie można dziedziczyć dziedziczyć Sealed public class figura { …………. ………….} public class prostokat : figura // wystąpi błąd kompilacji { ……………………… ………………………}

4 Interfejs – to w zasadzie klasa abstrakcyjna, ale nie może on zawierać metod zawierających kod (mogą być tylko deklaracje metod) Interface Ifigura { …………. ………….} public class prostokat : Ifigura // klasa dziedzicząca po interfejsie { ……………………… ………………………} Uwaga ! Klasa może w C# dziedziczyć tylko po jednej klasie, natomiast po interfejsach kilku public class prostokat : figura, Ifigura // klasa dziedzicząca po klasie i interfejsie { ……………………… ………………………}


Pobierz ppt "Klasy abstrakcyjne i interfejsy. Metoda abstrakcyjna – metoda nie zawierająca kodu: abstract public void ZamazSlad(); // nie ma nawiasów {} abstract public."

Podobne prezentacje


Reklamy Google