Przejdź do głównej treści
  1. Strona główna
  2. Technik informatyk
  3. INF.03
  4. Pytanie

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe PHP

Które stwierdzenie najlepiej opisuje klasę Owoc zdefiniowaną w języku PHP i przedstawioną na listingu?
class Owoc {
    public $nazwa;
    private $kolor;
    function set_nazwa($nazwa) {
        $this->nazwa = $nazwa;
    }
}

Klasa Owoc rzeczywiście ma dwa pola: publiczne pole nazwa oraz prywatne pole kolor. Widoczność pola kolor ogranicza się do wnętrza klasy, co oznacza, że nie może być ono bezpośrednio dostępne z zewnątrz. Metoda set_nazwa jest jedyną zdefiniowaną metodą, która umożliwia modyfikację wartości pola nazwa. Przykładowo, można stworzyć nowy obiekt klasy Owoc i ustawić jego nazwę za pomocą tej metody: $owoc = new Owoc(); $owoc->set_nazwa('Jabłko');. Takie podejście ilustruje zasadę enkapsulacji, która jest jedną z podstaw programowania obiektowego, gdzie dane obiektu są chronione i dostępne tylko poprzez metody, co zwiększa bezpieczeństwo i integralność danych. Dobrą praktyką jest również stosowanie metod get i set do zarządzania wartościami pól, co ułatwia kontrolowanie dostępu i weryfikację danych.
Wiele z błędnych odpowiedzi opiera się na niewłaściwej interpretacji widoczności pól oraz liczby metod w klasie. Klasa Owoc ma jedno publiczne pole o nazwie nazwa oraz jedno prywatne pole kolor, co oznacza, że tylko metody wewnątrz klasy mogą uzyskiwać dostęp do pola kolor. Pierwsza odpowiedź sugeruje, że klasa ma jedno pole i dwie metody, co jest niezgodne z rzeczywistością, ponieważ nie zdefiniowano drugiej metody. Z kolei odpowiedzi wskazujące na istnienie konstruktora są również błędne, ponieważ klasa Owoc nie definiuje żadnego konstruktora, co oznacza, że PHP automatycznie generuje domyślny konstruktor, ale nie jest on jawnie widoczny w kodzie. Istotnym błędem jest również założenie, że pole nazwa ma ograniczoną widoczność, co nie jest prawdziwe, gdyż jest ono publiczne i dostępne z zewnątrz klasy. Takie nieprawidłowe wnioski mogą wynikać z braku zrozumienia podstawowych zasad programowania obiektowego oraz widoczności w PHP, co jest kluczowe dla poprawnego projektowania aplikacji. W szczególności, umiejętność rozróżnienia między różnymi poziomami widoczności (publiczne, prywatne, chronione) jest niezbędna dla efektywnego korzystania z obiektów i klas w tym języku.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wyślemy tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.