Instatowanie klasy jest bardzo podstawową zasadą stosowania podejścia do programowania obiektowego (OOP), a ludzie często mylą ten termin z czymś złożonym. W Pythonie tworzenie klas lub tworzenie jej instancji odbywa się poprzez utworzenie zmiennej i ustawianie jej równej nazwie klas z nawiasem, tak jak wywołać funkcję.
Ten post będzie działał jako przewodnik i wyjaśni, co należy rozumieć przez tworzenie instancji i procesu szczegółowego tworzenia klas.
Jakie instancje klasy w Pythonie?
Instatowanie klasy oznacza po prostu utworzenie duplikatu/kopii klasy Python, która będzie zawierać wszystkie zmienne, funkcje i atrybuty oryginalnej klasy. Odnosząc się do instancji z punktu OOP, jest to proces tworzenia zmiennych obiektowych klasy klasy.
Notatka: Tworzenie obiektów/kopii klasy jest również nazywane tworzeniem instancji klasy, a zatem termin „instancja” klasy
Jak utworzyć klasę w Python?
Jak wspomniano powyżej, aby utworzyć instancję klasy, musisz wywołać nazwę klasy, tak jak wywołać normalną funkcję i przechowywać wynik w zmiennej. Ponownie, pod względem OOP, nazywa się to wywołaniem konstruktora. Powoduje to jednak zamieszanie wśród ludzi, ponieważ nie określacie metody konstruktora o tej samej nazwie w Pythonie.
W każdym razie składnia instancji klasy jest następująca:
objvar = klassname (initizevariablearguments)
W tej składni:
Przykład 1: Utwórz podstawową klasę w Pythonie
Aby zademonstrować metodę tworzenia instancji klasy, musisz najpierw mieć klasę. Dlatego weź następujący fragment kodu, który utworzy klasę dla osób o imionach dwóch osób przechowywanych w zmiennych i funkcji do wydrukowania imienia osoby 1:
Osoba klasowa:
p1name = "John Doe"
p2name = „Rudy Taylor”
def getnamep1 (ja):
powrót do siebie.P1Name;
Następnie utwórz zmienną o nazwie „POBJ1” i ustaw ją równą nazwie klas „Osoba” z okrągłymi nawiasami, aby stworzyć kopię klasy w Pobj1:
POBJ1 = person ()
Następnie możesz użyć zmiennej POBJ1 z operatorem kropkowym, aby uzyskać dostęp do zmiennych i funkcji klasy osoby:
Drukuj („bezpośredni dostęp do zmiennej:”, Pobj1.P2Name)
Drukuj („wywoływanie funkcji klasy:”, Pobj1.getnamep1 ())
Snippet kodowy dla tego przykładu jest następujący:
Osoba klasowa:
p1name = "John Doe"
p2name = „Rudy Taylor”
def getnamep1 (ja):
powrót do siebie.P1Name;
POBJ1 = person ()
Drukuj („bezpośredni dostęp do zmiennej:”, Pobj1.P2Name)
Drukuj („wywoływanie funkcji klasy:”, Pobj1.getnamep1 ())
Po wykonaniu tego kodu wytworzy on następujący wynik na terminalu:
Z tego wyjścia możesz wyraźnie stwierdzić, że pomyślnie utworzyłeś klasę osoby.
Przykład 2: Instatowanie klasy w Pythonie przez przekazywanie wartości
Jeśli klasa ma niezainnościzowane zmienne, będziesz musiał przekazać im wartości podczas tworzenia instancji tej klasy. Aby to zademonstrować, weź następujący kod klasy:
Osoba klasowa:
def __init __ (self, p1name, p2name):
samego siebie.p1Name = p1name
samego siebie.p2name = p2name
def getnamep1 (ja):
powrót do siebie.P1Name;
W tej klasie zmienne P1Name i P2Name są niezaintywowane i musisz przekazać wartość podczas tworzenia instancji w następujący sposób:
Pobj1 = osoba („Alex”, „Monroe”)
Następnie możesz użyć POBJ1, aby uzyskać dostęp do zmiennych i funkcji, tak jak w pierwszym przykładzie:
Drukuj („bezpośredni dostęp do zmiennej:”, Pobj1.P2Name)
Drukuj („wywoływanie funkcji klasy:”, Pobj1.getnamep1 ())
Kompletny fragment kodu dla tego przykładu jest:
Osoba klasowa:
def __init __ (self, p1name, p2name):
samego siebie.p1Name = p1name
samego siebie.p2name = p2name
def getnamep1 (ja):
powrót do siebie.P1Name;
Pobj1 = osoba („Alex”, „Monroe”)
Drukuj („bezpośredni dostęp do zmiennej:”, Pobj1.P2Name)
Drukuj („wywoływanie funkcji klasy:”, Pobj1.getnamep1 ())
Po wykonaniu tego programu utworzy on następujące dane wyjściowe na terminalu:
Pomyślnie utworzyłeś klasę z niezainnościzowanymi zmiennymi.
Wniosek
Instatowanie klasy to proces tworzenia instancji tej klasy, które zawierają wszystkie zmienne, funkcje i inne atrybuty, które można nazwać kopią tej klasy. Aby utworzyć klasę, musisz wywołać metodę konstruktora, aw Python metoda konstruktora to nazwa klasy, a następnie okrągłe nawiasy, podobnie jak wywołanie funkcji. Po utworzeniu klasy można uzyskać dostęp do atrybutów skopiowanej klasy za pomocą operatora kropki.