Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Czy metody w klasie mogą być prywatne?

Ostatnio zmodyfikowano 2011-02-12 12:50
Autor Wiadomość
marek
Temat założony przez niniejszego użytkownika
Czy metody w klasie mogą być prywatne?
» 2011-02-10 11:09:07
Męczę sie z programowaniem obiektowym. Idzie mi jak po grudzie. To że zmienne klasy mogą być być prywatne i publiczne, to czuję. Tak samo oczywiste jest dla mnie że metoda może być publiczna. Nie bardzo wiem natomiast jak interpretować metodę która jest prywatna. Tzn że metoda dziala wewnątrz klasy? Co to znaczy że dziala wewnatrz klasy? Czy ktoś mi poda prosty i działający program z prywatną metodą?
A teraz pytanie ogólne.
Narazie nie widzę zalet programowania obiektowego. Być może ujawniają sie one dopiero przy dużych programach.
Czy programowanie obiektowe to takie wielkie aj waj?
Czy są zawodowcy którzy nie korzystają z tego narzędzia? Jak to wygląda procentowo?
 
P-28133
malan
» 2011-02-10 11:40:03
Tzn że metoda dziala wewnątrz klasy?
Tak- działa wewnątrz klasy i tylko tam.

Co to znaczy że dziala wewnatrz klasy?
To, że możesz ją wywołać tylko wewnątrz innych metod tej klasy.

Czy ktoś mi poda prosty i działający program z prywatną metodą?
C/C++
#include <iostream>

class Foo
{
public:
   
    Foo( int newFoo )
        : foo( newFoo )
    {
    }
   
    int getFoo() const
    {
        return foo;
    }
   
    int getFooAfterMagicRemaking()
    {
        magicRemaking();
        return foo;
    }
   
private:
   
    void magicRemaking()
    {
        foo = 13 * 2 * 2 + 17;
    }
   
    int foo;
};

int main()
{
    Foo myFoo( 666 );
    std::cout << myFoo.getFooAfterMagicRemaking();
   
    std::cin.sync();
    std::cin.get();
}
P-28135
marek
Temat założony przez niniejszego użytkownika
» 2011-02-10 22:07:08
Malan
Dzięki
Jutro postaram się przekumać.
Ale tak przy okazji.
Czujesz wyższość  Świąt Wielkiej Nocy nad świętami Bożego Narodzenia?
Czujesz wyższość  Programowania Obiektowego  nad Programowaniem Strukturalnym?
 
P-28160
malan
» 2011-02-10 22:32:30
Czujesz wyższość  Świąt Wielkiej Nocy nad świętami Bożego Narodzenia?

false


Czujesz wyższość  Programowania Obiektowego  nad Programowaniem Strukturalnym?

true
P-28166
dmx81
» 2011-02-12 12:50:25
majac pilota do dvd zastanawiasz sie, co sie dzieje, kiedy uzyjesz przycisku PLAY?
PLAY w tym przypadku to metoda (funkcja skladowa) publiczna, a wszystko inne, co dzieje sie pomiedzy wcisnieciem przycisku a startem odtwarzania - to juz sa ukryte dla nas, uzytkownikow tego urzadzenia, metody prywatne.

Oczywiscie konstruktor urzadzenia zna te prywatne metody (tak jak projektant kodu zna prywatne metody), ale ma mozliwosc ich ukrywania przed uzytkownikiem, dostarczajac jedynie metody publiczne - czyli INTERFEJS (tak ladnie spolszczony wyraz)

przykladowo w gierce - wcisnieciu strzalki przyporzadkujesz metode - podskocz.
a ta metoda publiczna, bedzie miala ukryte w sobie metody np. sprawdzajace, czy nie wystepuje kolizja

Mam nadzieje, ze rozumiesz sens tworzenia prywatnych metod.
P-28208
« 1 »
  Strona 1 z 1