User Tools

Site Tools


appunti3s:python_oggetti_e_attributi

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
appunti3s:python_oggetti_e_attributi [2020/08/01 00:24] profproappunti3s:python_oggetti_e_attributi [2020/08/01 11:11] (current) profpro
Line 31: Line 31:
 Questo modo di scrivere il programma può sembrare difficile e innaturale, ma permette di avere dei vantaggi nella manutenzione del programma. Questo modo di scrivere il programma può sembrare difficile e innaturale, ma permette di avere dei vantaggi nella manutenzione del programma.
  
 +====Attributi pubblici e privati====
 Per rendere difficile modificare un attributo "dato", di solito lo si rende "privato". In altre parole si deve limitare la sua possibilità di accesso da parte del programma. Per rendere difficile modificare un attributo "dato", di solito lo si rende "privato". In altre parole si deve limitare la sua possibilità di accesso da parte del programma.
 Viceversa i dati che non sono privati, sono detti pubblici, cioè chiunque vi può accedere da qualsiasi punto del programma. Viceversa i dati che non sono privati, sono detti pubblici, cioè chiunque vi può accedere da qualsiasi punto del programma.
  
 In Python per rendere pubblico o privato qualcosa, basta usare una convenzione sul nome: In Python per rendere pubblico o privato qualcosa, basta usare una convenzione sul nome:
-  * %%__esempio1%% è la convenzione da usare per un elemento privato +  * %%__esempio1%%  
-  * esempio2 è la convenzione da usare per un elemento pubblico +    * è la convenzione da usare per un elemento privato 
-  * %%__esempio3__%% è la convenzione da usare per un elemento built-in (pubblico), una convenzione che il programmatore non dovrebbe mai adottare+  * esempio2  
 +    * è la convenzione da usare per un elemento pubblico 
 +  * %%__esempio3__%%  
 +    * è la convenzione da usare per un elemento built-in (pubblico), una convenzione che il programmatore non dovrebbe mai adottare
  
 +Nel caso in cui si tenti di invocare un metodo privato, si ottiene un errore poco chiaro: 
  
 +  AttributeError: 'Classe' instance has no attribute '__esempio1'
appunti3s/python_oggetti_e_attributi.txt · Last modified: 2020/08/01 11:11 by profpro