Ben tornato.
Abbiamo appreso che siamo stati in grado di creare un attributo effettivo per la classe, ma che dire di un metodo?
C'è un modo per fare qualcosa come qui, cosa facciamo con gli attributi, ma per i metodi?
Bene, c'è.
E usiamo un decoratore, che è un argomento che tratteremo più avanti.
E tra poco capirai come funzionano questi sotto il cofano.
Ma per ora, la sintassi che useremo è il lato dell'annuncio e quindi chiamiamo un metodo di classe come questo.
E ora con questo decoratore, ora possiamo scrivere una funzione, ad esempio, creiamo una
funzione e la chiameremo aggiungendo cose che porteranno Namwon e insensibile.
E qui, oh, assicurati di avere la definizione per la funzione e qui restituiremo solo Namwon.
Più numero a.
OK, quindi cosa fa questo metodo di classe?
Permettetemi di minimizzare questo solo così possiamo vedere un po' meglio.
Ora qui, vediamo se il giocatore uno ha accesso all'aggiunta di cose.
Quindi diciamo solo aggiungendo le cose due e tre, se clicco, corro.
Prende due argomenti di posizione, ma tre sono stati dati.
Hmm, è sulla riga 17, quindi quando lo chiamiamo, lo abbiamo assegnato ai parametri, ma poi si aspettava, dice che
in realtà ne abbiamo ottenuti tre e questo perché aggiungendo cose, il primo parametro, proprio come
abbiamo qui, è .
La classe e la classe stanno per classe, quindi questo personaggio del giocatore, questa è la classe a cui ci riferiamo, così
simile a quella che abbiamo visto prima, ma lo standard è usare la classe ora se lo eseguo.
Vedrai che ne avremo cinque.
OK, ma guardando questo, sembra che sia più o meno lo stesso di sopra, tranne che
invece di usare self, usiamo conchiglie.
Ma come è questo un metodo di classe?
Bene, è perché possiamo effettivamente usarlo senza nemmeno istanziare una classe.
Lascia che te lo mostri, diciamo che non istanziamo il giocatore uno, e ora chiamo semplicemente qui il
personaggio del giocatore DOT aggiungendo questo.
Se clicco su Esegui.
Guarda qui, ne prendo cinque.
È un metodo sulla classe effettiva, è un metodo di classe.
Quindi puoi fare alcune cose interessanti e, a proposito, i metodi di classe non vengono usati così spesso.
Quindi, se stai pensando, perché abbiamo bisogno di questo?
Bene, direi che il 95 percento delle tue classi non utilizzerà qualcosa come un metodo di classe.
Ma ci sono casi in cui questo potrebbe essere utile.
Ad esempio, possiamo usare la classe per istanziare effettivamente un oggetto qui.
Quindi, per esempio, posso dire quella classe, che è la classe, che è il personaggio del giocatore, e ho intenzione di
istanziarlo, ricorda, proprio come abbiamo fatto qui con le parentesi, con NUM uno più il numero
due come secondo parametro.
E gli daremo il nome Teddy.
Se premo corri qui.
Guarda, ho istanziato un oggetto, Teddy, con l'età di cinque anni.
Quindi andiamo.
Prendi questo.
Rendi questo uguale al giocatore tre.
E se eseguo il giocatore tre proprio qui, punto h e faccio clic su Esegui.
Ne ho cinque, quindi ho un giocatore completamente nuovo qui che è stato creato usando questo metodo di classe.
Quindi sono stato in grado di creare proprio come ho creato un oggetto di classe per attribuire un metodo di classe usando questo nel
sito.
C'è anche un altro modo per fare qualcosa del genere, che è il metodo statico.
E il metodo statico funziona esattamente come qui, tranne.
Non hai accesso a questa classe o alla classe.
Quindi non puoi fare qualcosa come abbiamo fatto sopra.
Invece, eseguiamo solo una sorta di metodo.
Come aggiungere cose a questo.
Quindi l'unica differenza tra i due è l'idea che non abbiamo accesso nei nostri parametri a
questa classe.
Quindi useremmo qualcosa come il metodo statico in cui non ci interessa nulla dello stato della classe, uno stato
di classe è qualcosa del genere.
Non ci interessano gli attributi, davvero.
Usiamo qualcosa come un metodo di classe quando ci preoccupiamo di questi attributi e forse vogliamo modificarli
o cambiarli.
Ora, questo metodo di classe e il metodo statico è qualcosa che non vedrai molto spesso, ma volevo
mostrarti solo perché potresti incontrarlo durante la tua carriera in Python, spero che questo non sia stato
troppo confuso nel prossimo video.
Voglio rivedere ciò che abbiamo appena appreso fino ad ora.