2013-09-25 9 views

Odpowiedz

5

Instancja jest obiektem w pamięci. Zasadniczo tworzysz obiekt i tworzysz instancje, gdy ich używasz.

Tu jest ładny artykuł o zajęciach Vs Przedmioty Vs przypadkach on mówi Java ale to dotyczy wszystkich Object Oriented Programming: Class vs Object vs Instance

+0

Pomocny artykuł. – user2749421

3

Jaka jest różnica między „ludzki” i „ty”? "Ludzie" to klasa (jest wielu ludzi), ale "ty" jesteś tylko jednym (jesteś obiektem człowieka). Co to jest instancja? Istnieje kilka funkcji, które działają nie tylko dla obiektów, ale także dla klasy. Przykłady: human :: isMammal() == true, human :: isArachnid() == false. Nie potrzebujesz obiektu klasy ludzkiej, aby wywoływać takie funkcje (ponieważ te funkcje nie używają żadnych specjalnych właściwości obiektów: wszyscy ludzie są ssakami, a nie pajęczakami), więc wystarczy pracować z instancją.

+0

Pytanie brzmi * nie * "jakie są różnice między klasą a instancją" – Micha

+0

Micha, dziękuję bardzo, masz absolutną rację! Byłem nieuważny. Po komentarzu rozszerzyłem swoją odpowiedź. – Ilya

2

Aby być prostym,

Obiekt jest instancją klasy.

Kiedy ludzie mówią o obiekcie, jest on bardziej konkretny dla konkretnej instancji (wartości zmiennych w klasie). Mam nadzieję, że przynajmniej nie pomyliłem cię.

2

Myślę, że większość programistów używałaby zamiennie "obiektu" i "instancji". Niektórzy pedanci mogą próbować rozróżnić, ale takie rozróżnienia nie mają znaczenia, jeśli nie są uznawane przez większość użytkowników terminów.

"Klasa", oczywiście, jest rodzajem szablonu lub projektu obiektu.

1

Obiekt jest definicją czegoś, podczas gdy instancja jest manifestacją, jeśli to coś. Na przykład krzesło z definicji ma siedzenie, 3 lub więcej nóg i tył. To byłby przedmiot. Uwaga, mamy tylko definicję, a nie sam obiekt. Teraz, jeśli stworzymy krzesło, mamy instancję.
W większości języków nowy operator jest sposób, aby utworzyć wystąpienie ...

Chair c = new Chair(); 

Są inne sposoby. W tym przypadku Krzesło jest obiektem, a c jest instancją. Możemy łatwo stworzyć dodatkowe krzesła, które nie mają wpływu na definicję obiektu.

1

instancja jest specyficzną realizacją obiektu. , gdy aplikacja jest uruchomiona, na przykład instancja tego programu działa na przykład, jeśli mamy obiekt do samochodu, bmw może być instancją tego

-1

Kod źródłowy pliku klasy definiuje obiekt. Aby korzystać z obiektu w innym kodem utworzyć instancję nim:

definicja obiektu:

public class Person { 
    String mName; 
    public Person(){} 
    public Person(String name){ 
     mName=name; 
    } 
    public void setName(String name){ 
     mName=name; 
    } 
    public String getName(){ 
     return mName; 
    } 
} 

wykorzystanie obiektu (wystąpienia):

Person me=new Person("John Doe"); 
//me is an instance of the person object; 
Person you=new Person("John Smith"); 
Person spouse=new Person("Jane Doe"); 
//lots of instances but only one Person Object 
String myName=me.getName(); 

Następny przeczytać na obiektach statycznych :)

Powiązane problemy