1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie? a) konstruktor b) referencje c) destruktor d) typy 2. Które z poniższych wyrażeń są poprawne dla klasy o nazwie A? a) A obiekt(); b) A obiekt; c) obiekt = A(); d) obiekt = A; 3. W jaki sposób możemy z wnętrza metody uzyskać dostęp do obiektu, na rzecz którego została ona wywołana? a) nie możemy b) poprzez użycie nazwy tej klasy c) poprzez dziedziczenie d) poprzez wskaźnik this 4. Które sposoby odniesienia się do składników obiektu są prawidłowe? a) obiekt.wartosc = 69; b) A *wskaznik; wskaznik = &obiekt ; wskaznik -> wartosc = 69; c) A *wskaznik; wskaznik.wartosc = 69; d) A &ref = obiekt; ref.wartosc = 69; 5. Które z poniższych zdań są prawdziwe? a) Klasa to obiekt b) Składnikiem klasy może być obiekt typu double c) Składnikiem klasy może byd funkcja d) Składnikiem klasy może byd obiekt innej klasy
6. Jakie etapy obejmuje wprowadzenie do programu nowej klasy? a) Definicję b) Implementację c) Implikację d) Przeciążenie 7. Destruktor to metoda: a) wywoływana w momencie usuwania obiektu b) wywoływana w momencie tworzenia obiektu c) przydzielająca dynamicznie pamięd obiektowi d) porządkująca pamięd operacyjną po usuniętych obiektach 8. Dziedziczenie pozwala na: a) łączenie obiektów b) implementację cech jednego obiektu do innego c) usunięcie z istniejącej klasy zbędnych elementów d) tworzenie nowej klasy na podstawie jednej lub kilku istniejących klas 9. Konstruktor to: a) specjalna metoda danej klasy, mająca za zadanie utworzyd obiekt tej klasy b) obiekt danej klasy c) metoda wywoływana w momencie usuwania obiektu d) metoda wywoływana w momencie tworzenia obiektu 10. Enkapsulacja polega na: a) tworzeniu danych prywatnych danej klasy b) ukrywaniu pewnych danych składowych lub metod danej klasy c) tworzeniu funkcji zaprzyjaźnionych d) wywoływaniu funkcji w momencie tworzenia obiektu
11. Czy poniższy fragment programu napisany jest poprawnie? class klasa { int i; }; main() { klasa test; test.i = 300; cout << test.i; } a) tak, ponieważ nie ma w nim błędów b) nie, ponieważ po nawiasie klamrowym zamykającym ciało klasy nie powinno byd średnika c) nie, ponieważ pole 'i' jest publiczne d) nie, ponieważ pole 'i' jest prywatne 12. Polimorfizm to: a) występujące w wielu postaciach metody b) inaczej pola składowe i dane c) mechanizm, dzięki któremu tworzymy klasy d) składnik dostępny z wnętrza klasy 13. Metoda statyczna: a) korzysta jedynie ze statycznych pól klasy b) można ją wywoład poprzez nazwę klasy c) można ją wywoład poprzez nazwę istniejącego obiektu d) można ją wywoład bez podania jakiegokolwiek obiektu
14. Które zdania są prawdziwe? a) klasa to typ obiektu b) klasa to obiekt c) definiując klasę definiujemy od razu obiekt d) funkcje składowe są w pamięci tylko jednokrotnie 15. Klasa to: a) funkcja b) tablica c) typ d) obiekt 16. Jakiego słowa kluczowego używa się do definicji klasy? a) new b) object c) void d) class 17. Jaki jest zakres ważności nazw deklarowanych w klasie? a) obszar po definicji nazwy b) obszar przed definicją nazwy c) obszar całej klasy d) obszar całego kodu 18. Czym się różni deklaracja klasy od jej definicji? a) niczym, to takie same czynności b) definicję umieszczamy w pliku nagłówkowym, a deklarację w kodzie źródłowym c) definicja klasy jest wymagana przy wykorzystaniu jej w innej klasie d) deklaracje i definicje wymagane są do utworzenia obiektu klasy
19. Po użyciu etykiety private: a) składnik klasy jest dostępny bez ograniczeo b) składnik klasy jest dostępny dla funkcji składowych danej klasy c) składnik klasy jest dostępny dla klas wywodzących się od tej klasy d) składnik klasy jest dostępny dla wszystkich obiektów o tym samym typie 20. Po użyciu etykiety protected: a) składnik klasy jest dostępny bez ograniczeo b) składnik klasy jest dostępny dla funkcji składowych danej klasy c) składnik klasy jest dostępny dla klas wywodzących się od tej klasy d) składnik klasy jest dostępny dla wszystkich obiektów o tym samym typie 21. Gdzie może byd zdefiniowana funkcja składowa klasy? a) w pliku nagłówkowym b) poza ciałem klasy bez potrzeby deklaracji funkcji w ciele klasy c) poza ciałem klasy, jeśli w jej definicji umieszczona jest deklaracja funkcji d) wewnątrz definicji klasy 22. Dana statyczna: a) jest wspólna dla wszystkich obiektów danej klasy b) tworzy się dopiero po zdefiniowaniu obiektu klasy c) jest w deklaracji poprzedzona słowem static d) jest w pamięci tworzona jednokrotnie 23. Funkcja statyczna: a) pozwala na odwołanie się wewnątrz niej do wskaźnika this b) nie pozwala na odwołanie się do nie-statycznych składników klasy c) nie dotyczy konkretnego obiektu, tylko klasy obiektów d) to inna nazwa na konstruktor i destruktor
24. Niech X oznacza identyfikator klasy. Prawidłowa deklaracja destruktora tej klasy wygląda następująco: a) void ~X ( ); b) ~X ( ); C) ~X (void); d) X (int); ODPOWIEDZI: 1: a,c 20: b,c 2: a,b 21: c,d 3: d 22: a,c,d 4: a,b,d 23: c 5: b,c,d 24: b,c 6: a,b 7: a 8: b,d 9: a,d 10: a,b 11: d 12: a 13: a,b,c,d 14: a,d 15: c 16: d 17: c 18: b,d 19: b