<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
	<id>https://www.gambas-it.org/wiki/index.php?action=history&amp;feed=atom&amp;title=Oggetti%2C_Classi_e_Moduli</id>
	<title>Oggetti, Classi e Moduli - Cronologia</title>
	<link rel="self" type="application/atom+xml" href="https://www.gambas-it.org/wiki/index.php?action=history&amp;feed=atom&amp;title=Oggetti%2C_Classi_e_Moduli"/>
	<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;action=history"/>
	<updated>2026-10-23T08:40:42Z</updated>
	<subtitle>Cronologia della pagina su questo sito</subtitle>
	<generator>MediaWiki 1.39.15</generator>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=42127&amp;oldid=prev</id>
		<title>Vuott il 14:54, 22 ago 2025</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=42127&amp;oldid=prev"/>
		<updated>2025-08-22T14:54:34Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 08:54, 22 ago 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l28&quot;&gt;Riga 28:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 28:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;All'interno di un progetto, si ha la possibilità di creare, sia nuove ''Classi'', che nuovi ''Moduli''; il nome dei file assumono l'estensione &amp;quot;'''.module'''&amp;quot; per i ''Moduli'', e &amp;quot;'''.class'''&amp;quot; per le ''Classi''. Discorso leggermente diverso per gli oggetti grafici (esempio le Form), che creano un'ulteriore file &amp;quot;'''.form'''&amp;quot;, contenente la definizione delle caratteristiche grafiche dell'oggetto e degli elementi inclusi in esso.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;All'interno di un progetto, si ha la possibilità di creare, sia nuove ''Classi'', che nuovi ''Moduli''; il nome dei file assumono l'estensione &amp;quot;'''.module'''&amp;quot; per i ''Moduli'', e &amp;quot;'''.class'''&amp;quot; per le ''Classi''. Discorso leggermente diverso per gli oggetti grafici (esempio le Form), che creano un'ulteriore file &amp;quot;'''.form'''&amp;quot;, contenente la definizione delle caratteristiche grafiche dell'oggetto e degli elementi inclusi in esso.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A differenza di una ''Classe'', un ''Modulo'' (come già detto) non può essere creato (esiste, e basta!), per cui non ha alcun ''Costruttore'', e di conseguenza nessun ''Distruttore'' (vedi '''_new()''' e '''_free()''' in [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi_nascosti&lt;/del&gt;:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;_New&lt;/del&gt;()&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;_e_Free&lt;/del&gt;()]]) e non possiede propri ''Eventi'', né può sollevarne attraverso l'istruzione &amp;quot;''[[Gli_eventi#Creare_un_Evento_proprio_di_un_Oggetto_creato_dall.27utente_-_L.27istruzione_Event|Event]]'' &amp;quot;. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|nota 4]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A differenza di una ''Classe'', un ''Modulo'' (come già detto) non può essere creato (esiste, e basta!), per cui non ha alcun ''Costruttore'', e di conseguenza nessun ''Distruttore'' (vedi '''_new()''' e '''_free()''' in [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi nascosti&lt;/ins&gt;: &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;New&lt;/ins&gt;() &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;e Free&lt;/ins&gt;()]]) e non possiede propri ''Eventi'', né può sollevarne attraverso l'istruzione &amp;quot;''[[Gli_eventi#Creare_un_Evento_proprio_di_un_Oggetto_creato_dall.27utente_-_L.27istruzione_Event|Event]]'' &amp;quot;. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|nota 4]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ricapitolando possiamo dire che:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ricapitolando possiamo dire che:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  * La &amp;lt;FONT Color=red&amp;gt;&amp;lt;B&amp;gt;CLASSE&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  * La &amp;lt;FONT Color=red&amp;gt;&amp;lt;B&amp;gt;CLASSE&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; - per essere utilizzata &amp;lt;U&amp;gt;deve&amp;lt;/u&amp;gt; essere &amp;quot;istanziata&amp;quot;. Le risorse di una ''Classe'' sono dunque utilizzabili esclusivamente attraverso la creazione &amp;lt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&lt;/del&gt;&amp;gt;uno o più&amp;lt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;span&lt;/del&gt;&amp;gt; ''Istanze/Oggetti'', rappresentati da variabili &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;identficatrici &lt;/del&gt;del tipo della ''Classe'' specifica.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; - per essere utilizzata &amp;lt;U&amp;gt;deve&amp;lt;/u&amp;gt; essere &amp;quot;istanziata&amp;quot;. Le risorse di una ''Classe'' sono dunque utilizzabili esclusivamente attraverso la creazione &amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;U&lt;/ins&gt;&amp;gt;uno o più&amp;lt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;u&lt;/ins&gt;&amp;gt; ''Istanze/Oggetti'', rappresentati da variabili &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;identificatrici &lt;/ins&gt;del tipo della ''Classe'' specifica.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; -  possiede '''propri''' ''Eventi'', e può sollevarne mediante le combinate istruzioni &amp;quot;Event&amp;quot; e &amp;quot;Raise&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; -  possiede '''propri''' ''Eventi'', e può sollevarne mediante le combinate istruzioni &amp;quot;Event&amp;quot; e &amp;quot;Raise&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l226&quot;&gt;Riga 226:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 226:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Metodi nascosti==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Metodi nascosti==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Per ogni oggetto, sia che venga creato da noi, sia che faccia parte delle librerie standard di Gambas, esistono dei metodi, nascosti, che possono essere utilizzati per condizionare la creazione, o meno, dell'oggetto stesso.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Per ogni oggetto, sia che venga creato da noi, sia che faccia parte delle librerie standard di Gambas, esistono dei metodi, nascosti, che possono essere utilizzati per condizionare la creazione, o meno, dell'oggetto stesso.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Questi metodi sono descritti in [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi_nascosti&lt;/del&gt;:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;_New&lt;/del&gt;()&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;_e_Free&lt;/del&gt;()]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Questi metodi sono descritti in [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi nascosti&lt;/ins&gt;: &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;New&lt;/ins&gt;() &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;e Free&lt;/ins&gt;()]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l307&quot;&gt;Riga 307:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 307:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  nome_variabile'''.'''nome_risorsa&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  nome_variabile'''.'''nome_risorsa&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;2&amp;lt;/font&amp;gt;] Vedere anche la seguente pagina: [[Lezioni:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;_programmazione_Orientata_agli_Oggetti&lt;/del&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;2&amp;lt;/font&amp;gt;] Vedere anche la seguente pagina: [[Lezioni: &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;programmazione Orientata agli Oggetti&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;3&amp;lt;/font&amp;gt;] Minisini, rispondendo nella Mailing List ufficiale di Gambas, ha così brevemente definito il ''Modulo'':&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;3&amp;lt;/font&amp;gt;] Minisini, rispondendo nella Mailing List ufficiale di Gambas, ha così brevemente definito il ''Modulo'':&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=42126&amp;oldid=prev</id>
		<title>Vuott il 14:49, 22 ago 2025</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=42126&amp;oldid=prev"/>
		<updated>2025-08-22T14:49:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 08:49, 22 ago 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l307&quot;&gt;Riga 307:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 307:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  nome_variabile'''.'''nome_risorsa&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  nome_variabile'''.'''nome_risorsa&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;2&amp;lt;/font&amp;gt;] Vedere anche &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;le seguenti discussioni sul forum&lt;/del&gt;:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;2&amp;lt;/font&amp;gt;] Vedere anche &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;la seguente pagina&lt;/ins&gt;: &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Lezioni&lt;/ins&gt;:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;_programmazione_Orientata_agli_Oggetti]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;BR&amp;gt; - https&lt;/del&gt;:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;//www.gambas-it.org/smf/index.php?topic=933.0&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;BR&amp;gt; - https://www.gambas-it.org/smf/index.php?topic=242&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;3&amp;lt;/font&amp;gt;] Minisini, rispondendo nella Mailing List ufficiale di Gambas, ha così brevemente definito il ''Modulo'':&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[&amp;lt;FONT Color=red&amp;gt;3&amp;lt;/font&amp;gt;] Minisini, rispondendo nella Mailing List ufficiale di Gambas, ha così brevemente definito il ''Modulo'':&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=42125&amp;oldid=prev</id>
		<title>Vuott il 14:45, 22 ago 2025</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=42125&amp;oldid=prev"/>
		<updated>2025-08-22T14:45:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 08:45, 22 ago 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l17&quot;&gt;Riga 17:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 17:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Così, se ad esempio il ''Modulo'' è stato chiamato dal programmatore &amp;quot;mio_modulo.module&amp;quot;, e possiede un &amp;quot;Metodo&amp;quot;, chiamato &amp;quot;Metododelmodulo()&amp;quot;, per invocare detto &amp;quot;Metodo&amp;quot; nel codice basterà scrivere:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Così, se ad esempio il ''Modulo'' è stato chiamato dal programmatore &amp;quot;mio_modulo.module&amp;quot;, e possiede un &amp;quot;Metodo&amp;quot;, chiamato &amp;quot;Metododelmodulo()&amp;quot;, per invocare detto &amp;quot;Metodo&amp;quot; nel codice basterà scrivere:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  mio_modulo.Metododelmodulo()&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  mio_modulo.Metododelmodulo()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Il concetto di base, però, è identico a quello della ''Classe'', tranne per il fatto che &amp;lt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&lt;/del&gt;&amp;gt;di un ''Modulo''&amp;lt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;span&lt;/del&gt;&amp;gt;, a differenza di una ''Classe'', &amp;lt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&lt;/del&gt;&amp;gt;non possono essere creati dinamicamente &amp;quot;Oggetti&amp;quot;&amp;lt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;span&lt;/del&gt;&amp;gt; (non possono essere create &amp;quot;istanze&amp;quot; del ''Modulo''): una volta stabilita la sua funzione all'interno di un'applicazione, e definiti i suoi &amp;quot;Metodi&amp;quot; interni, il ''Modulo'' rimane &amp;quot;''statico'' &amp;quot; all'interno del programma. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|nota 3]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Il concetto di base, però, è identico a quello della ''Classe'', tranne per il fatto che &amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;U&lt;/ins&gt;&amp;gt;di un ''Modulo''&amp;lt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;u&lt;/ins&gt;&amp;gt;, a differenza di una ''Classe'', &amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;U&lt;/ins&gt;&amp;gt;non possono essere creati dinamicamente &amp;quot;Oggetti&amp;quot;&amp;lt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;u&lt;/ins&gt;&amp;gt; (non possono essere create &amp;quot;istanze&amp;quot; del ''Modulo''): una volta stabilita la sua funzione all'interno di un'applicazione, e definiti i suoi &amp;quot;Metodi&amp;quot; interni, il ''Modulo'' rimane &amp;quot;''statico'' &amp;quot; all'interno del programma. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|nota 3]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Il discorso è molto simile, se non completamente analogo, alle ''Classi'' &amp;quot;statiche&amp;quot; contenute nelle librerie di base di Gambas, come ad esempio &amp;quot;gb&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Il discorso è molto simile, se non completamente analogo, alle ''Classi'' &amp;quot;statiche&amp;quot; contenute nelle librerie di base di Gambas, come ad esempio &amp;quot;gb&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l28&quot;&gt;Riga 28:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 28:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;All'interno di un progetto, si ha la possibilità di creare, sia nuove ''Classi'', che nuovi ''Moduli''; il nome dei file assumono l'estensione &amp;quot;'''.module'''&amp;quot; per i ''Moduli'', e &amp;quot;'''.class'''&amp;quot; per le ''Classi''. Discorso leggermente diverso per gli oggetti grafici (esempio le Form), che creano un'ulteriore file &amp;quot;'''.form'''&amp;quot;, contenente la definizione delle caratteristiche grafiche dell'oggetto e degli elementi inclusi in esso.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;All'interno di un progetto, si ha la possibilità di creare, sia nuove ''Classi'', che nuovi ''Moduli''; il nome dei file assumono l'estensione &amp;quot;'''.module'''&amp;quot; per i ''Moduli'', e &amp;quot;'''.class'''&amp;quot; per le ''Classi''. Discorso leggermente diverso per gli oggetti grafici (esempio le Form), che creano un'ulteriore file &amp;quot;'''.form'''&amp;quot;, contenente la definizione delle caratteristiche grafiche dell'oggetto e degli elementi inclusi in esso.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A differenza di una ''Classe'', un ''Modulo'' (come già detto) non può essere creato (esiste, e basta!), per cui non ha alcun ''Costruttore'', e di conseguenza nessun ''Distruttore'' (vedi '''_new()''' e '''_free()''' in [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi nascosti&lt;/del&gt;]]) e non possiede propri ''Eventi'', né può sollevarne attraverso l'istruzione &amp;quot;''[[Gli_eventi#Creare_un_Evento_proprio_di_un_Oggetto_creato_dall.27utente_-_L.27istruzione_Event|Event]]'' &amp;quot;. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|nota 4]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A differenza di una ''Classe'', un ''Modulo'' (come già detto) non può essere creato (esiste, e basta!), per cui non ha alcun ''Costruttore'', e di conseguenza nessun ''Distruttore'' (vedi '''_new()''' e '''_free()''' in [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi_nascosti:_New()_e_Free()&lt;/ins&gt;]]) e non possiede propri ''Eventi'', né può sollevarne attraverso l'istruzione &amp;quot;''[[Gli_eventi#Creare_un_Evento_proprio_di_un_Oggetto_creato_dall.27utente_-_L.27istruzione_Event|Event]]'' &amp;quot;. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|nota 4]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l225&quot;&gt;Riga 225:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 225:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Metodi nascosti==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Metodi nascosti==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Per ogni oggetto, sia che venga creato da noi, sia che faccia parte delle librerie standard di Gambas, esistono dei metodi, nascosti, che possono essere utilizzati per condizionare la creazione, o meno, dell'oggetto stesso. Questi metodi sono descritti in [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi nascosti&lt;/del&gt;]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Per ogni oggetto, sia che venga creato da noi, sia che faccia parte delle librerie standard di Gambas, esistono dei metodi, nascosti, che possono essere utilizzati per condizionare la creazione, o meno, dell'oggetto stesso.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;BR&amp;gt;&lt;/ins&gt;Questi metodi sono descritti in [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Metodi_nascosti:_New()_e_Free()&lt;/ins&gt;]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40409&amp;oldid=prev</id>
		<title>Vuott il 10:24, 26 nov 2024</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40409&amp;oldid=prev"/>
		<updated>2024-11-26T10:24:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;amp;diff=40409&amp;amp;oldid=40363&quot;&gt;Mostra modifiche&lt;/a&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40363&amp;oldid=prev</id>
		<title>Vuott il 16:06, 23 nov 2024</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40363&amp;oldid=prev"/>
		<updated>2024-11-23T16:06:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 10:06, 23 nov 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l58&quot;&gt;Riga 58:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 58:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;c) Nell'esempio 3 viene utilizzata una funzione interna al Modulo ModUtil: CalcoloPerc(). A parte la sua funzione specifica (è solo un esempio), il concetto è visibilmente diverso dall'utilizzo di una classe. L'uso della funzione CalcoloPerc() deve avvenire passando per il riferimento al Modulo ModUtil, ma l'utilizzo è immediato, come anche il valore di ritorno.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;c) Nell'esempio 3 viene utilizzata una funzione interna al Modulo ModUtil: CalcoloPerc(). A parte la sua funzione specifica (è solo un esempio), il concetto è visibilmente diverso dall'utilizzo di una classe. L'uso della funzione CalcoloPerc() deve avvenire passando per il riferimento al Modulo ModUtil, ma l'utilizzo è immediato, come anche il valore di ritorno.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;===Classi ''Statiche''===&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;La ''Classe'' '''Statica''' ha un comportamento identico al ''Modulo'' ed è a questo in tutto paragonabile.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Variabili interne al Modulo===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Variabili interne al Modulo===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Come per ''Classi'', i ''Moduli'' possono contenere variabili interne, statiche ('''STATIC'''), private ('''PRIVATE''') e/o pubbliche ('''PUBLIC'''), e anche costanti ('''CONST'''). Dipedentemente dalla loro dichiarazione, l'uso è identico a quello di una proprietà di classe, tranne per il fatto che la proprietà (o variabile) non viene creata, ma esiste nello stesso ambito del modulo.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Come per ''Classi'', i ''Moduli'' possono contenere variabili interne, statiche ('''STATIC'''), private ('''PRIVATE''') e/o pubbliche ('''PUBLIC'''), e anche costanti ('''CONST'''). Dipedentemente dalla loro dichiarazione, l'uso è identico a quello di una proprietà di classe, tranne per il fatto che la proprietà (o variabile) non viene creata, ma esiste nello stesso ambito del modulo.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Nel seguente esempio viene mostrato come può apparire il codice del modulo ModUtil, e il suo metodo (o funzione) interno:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  '''' Gambas module file'''&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  '''' Gambas module file'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  .&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  .&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l77&quot;&gt;Riga 77:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 74:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Nell&lt;/del&gt;'esempio viene mostrato &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;come può apparire &lt;/del&gt;il codice &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;del modulo ModUtil, e il suo metodo (o funzione) interno.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;In quest&lt;/ins&gt;'&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;altro &lt;/ins&gt;esempio viene mostrato il codice &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;di una Classe ''Window'':&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;----&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  '''' Gambas class file'''&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  '''' Gambas class file'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  .&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  .&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l91&quot;&gt;Riga 91:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 86:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;In quest'altro esempio viene mostrato &lt;/del&gt;il &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;codice &lt;/del&gt;di &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;una Classe Window&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Come si può notare, la struttura dei due file è molto simile (se non addirittura uguale); Gambas da parte sua, inserisce automaticamente un marcatore ad inizio file, ad evidenziare &lt;/ins&gt;il &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;tipo &lt;/ins&gt;di &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;file che si sta trattando&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Ricordo che la modifica di questa nota non è permessa, e in ogni caso Gambas la reinserisce automaticamente.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Come si può notare, la struttura dei due file è molto simile (se non addirittura uguale); Gambas da parte sua, inserisce automaticamente &lt;/del&gt;un &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;marcatore ad inizio file, ad evidenziare il tipo di file che si sta trattando. Ricordo che la modifica di questa nota non &lt;/del&gt;è &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;permessa, e &lt;/del&gt;in &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ogni caso Gambas la reinserisce automaticamente&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Classi ''Statiche''==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;La ''Classe'' '''Statica''' ha &lt;/ins&gt;un &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;comportamento identico al ''Modulo'' ed &lt;/ins&gt;è &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;a questo &lt;/ins&gt;in &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;tutto paragonabile&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40362&amp;oldid=prev</id>
		<title>Vuott il 16:03, 23 nov 2024</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40362&amp;oldid=prev"/>
		<updated>2024-11-23T16:03:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 10:03, 23 nov 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l39&quot;&gt;Riga 39:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 39:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; - può essere utilizzato esclusivamente in modo diretto attraverso il suo nome identificatore. &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;Non&amp;lt;/span&amp;gt; è possibile creare Istanze/Oggetti di un ''Modulo''.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; - può essere utilizzato esclusivamente in modo diretto attraverso il suo nome identificatore. &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;Non&amp;lt;/span&amp;gt; è possibile creare Istanze/Oggetti di un ''Modulo''.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; - &amp;lt;U&amp;gt;non&amp;lt;/u&amp;gt; possiede propri ''Eventi'' (sebbene possa comunque contenere routine relative ad Eventi di altre Classi), &amp;lt;U&amp;gt;né&amp;lt;/u&amp;gt; può sollevarne mediante le combinate istruzioni &amp;quot;Event&amp;quot; e &amp;quot;Raise&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;BR&amp;gt; - &amp;lt;U&amp;gt;non&amp;lt;/u&amp;gt; possiede propri ''Eventi'' (sebbene possa comunque contenere routine relative ad Eventi di altre Classi), &amp;lt;U&amp;gt;né&amp;lt;/u&amp;gt; può sollevarne mediante le combinate istruzioni &amp;quot;Event&amp;quot; e &amp;quot;Raise&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;La ''Classe'' '''Statica''' ha un comportamento identico al ''Modulo'' ed è a questo in tutto paragonabile.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;----&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Esempi===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Esempi===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l62&quot;&gt;Riga 62:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 59:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;c) Nell'esempio 3 viene utilizzata una funzione interna al Modulo ModUtil: CalcoloPerc(). A parte la sua funzione specifica (è solo un esempio), il concetto è visibilmente diverso dall'utilizzo di una classe. L'uso della funzione CalcoloPerc() deve avvenire passando per il riferimento al Modulo ModUtil, ma l'utilizzo è immediato, come anche il valore di ritorno.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;c) Nell'esempio 3 viene utilizzata una funzione interna al Modulo ModUtil: CalcoloPerc(). A parte la sua funzione specifica (è solo un esempio), il concetto è visibilmente diverso dall'utilizzo di una classe. L'uso della funzione CalcoloPerc() deve avvenire passando per il riferimento al Modulo ModUtil, ma l'utilizzo è immediato, come anche il valore di ritorno.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Variabili interne al Modulo&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=&lt;/del&gt;===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Classi ''Statiche''===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;La ''Classe'' '''Statica''' ha un comportamento identico al ''Modulo'' ed è a questo in tutto paragonabile.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Variabili interne al Modulo===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Come per ''Classi'', i ''Moduli'' possono contenere variabili interne, statiche ('''STATIC'''), private ('''PRIVATE''') e/o pubbliche ('''PUBLIC'''), e anche costanti ('''CONST'''). Dipedentemente dalla loro dichiarazione, l'uso è identico a quello di una proprietà di classe, tranne per il fatto che la proprietà (o variabile) non viene creata, ma esiste nello stesso ambito del modulo.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Come per ''Classi'', i ''Moduli'' possono contenere variabili interne, statiche ('''STATIC'''), private ('''PRIVATE''') e/o pubbliche ('''PUBLIC'''), e anche costanti ('''CONST'''). Dipedentemente dalla loro dichiarazione, l'uso è identico a quello di una proprietà di classe, tranne per il fatto che la proprietà (o variabile) non viene creata, ma esiste nello stesso ambito del modulo.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;----&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l95&quot;&gt;Riga 95:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 95:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Come si può notare, la struttura dei due file è molto simile (se non addirittura uguale); Gambas da parte sua, inserisce automaticamente un marcatore ad inizio file, ad evidenziare il tipo di file che si sta trattando. Ricordo che la modifica di questa nota non è permessa, e in ogni caso Gambas la reinserisce automaticamente.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Come si può notare, la struttura dei due file è molto simile (se non addirittura uguale); Gambas da parte sua, inserisce automaticamente un marcatore ad inizio file, ad evidenziare il tipo di file che si sta trattando. Ricordo che la modifica di questa nota non è permessa, e in ogni caso Gambas la reinserisce automaticamente.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=&lt;/del&gt;==Copia e clone di un Oggetto&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=&lt;/del&gt;==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Copia e clone di un Oggetto==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Per gli Oggetti, una copia equivale a copiare l'indirizzo in memoria dell'oggetto, e quindi il suo riferimento. Ogni modifica apportata su qualsiasi variabile che contenga il solo indirizzo, modifica di conseguenza l'Oggetto.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Per gli Oggetti, una copia equivale a copiare l'indirizzo in memoria dell'oggetto, e quindi il suo riferimento. Ogni modifica apportata su qualsiasi variabile che contenga il solo indirizzo, modifica di conseguenza l'Oggetto.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40075&amp;oldid=prev</id>
		<title>Vuott il 18:39, 10 nov 2024</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40075&amp;oldid=prev"/>
		<updated>2024-11-10T18:39:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 12:39, 10 nov 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l276&quot;&gt;Riga 276:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 276:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Infatti, gli &amp;quot;Oggetti&amp;quot; in Gambas sono costituiti da Strutture e Sub-Strutture, scritte in C, che ovviamente occupano memoria.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Infatti, gli &amp;quot;Oggetti&amp;quot; in Gambas sono costituiti da Strutture e Sub-Strutture, scritte in C, che ovviamente occupano memoria.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;E' il caso di sottolineare che è un errore l'uso - come &amp;lt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&lt;/del&gt;&amp;gt;''argomento''&amp;lt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;span&lt;/del&gt;&amp;gt; di una funzione - di una variabile di un Oggetto che &amp;lt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&lt;/del&gt;&amp;gt;non sia stato creato&amp;lt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;span&lt;/del&gt;&amp;gt; con la parola ''New'' o che non derivi dal ritorno di altra funzione oppure che non sia associata a un Oggetto della medesima Classe.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;E' il caso di sottolineare che è un errore l'uso - come &amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;U&lt;/ins&gt;&amp;gt;''argomento''&amp;lt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;u&lt;/ins&gt;&amp;gt; di una funzione - di una variabile di un Oggetto che &amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;U&lt;/ins&gt;&amp;gt;non sia stato creato&amp;lt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;u&lt;/ins&gt;&amp;gt; con la parola ''New'' o che non derivi dal ritorno di altra funzione oppure che non sia associata a un Oggetto della medesima Classe.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;La variabile che funge da ''Puntatore'' a un ''Oggetto'' sovente è definita &amp;quot;''Handle'' &amp;quot; (maniglia), che rappresenta &amp;quot;''una variabile associata a un oggetto complesso, che lo identifica''&amp;quot;. La maniglia è la &amp;quot;protuberanza&amp;quot;, con la quale si interagisce con l'&amp;lt;I&amp;gt;Oggetto&amp;lt;/i&amp;gt;. In Gambas, qualsiasi ''Oggetto'' (Form, o altro) è dunque in sostanza un &amp;quot;''Handle'' &amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;La variabile che funge da ''Puntatore'' a un ''Oggetto'' sovente è definita &amp;quot;''Handle'' &amp;quot; (maniglia), che rappresenta &amp;quot;''una variabile associata a un oggetto complesso, che lo identifica''&amp;quot;. La maniglia è la &amp;quot;protuberanza&amp;quot;, con la quale si interagisce con l'&amp;lt;I&amp;gt;Oggetto&amp;lt;/i&amp;gt;. In Gambas, qualsiasi ''Oggetto'' (Form, o altro) è dunque in sostanza un &amp;quot;''Handle'' &amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l334&quot;&gt;Riga 334:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 334:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Riferimenti=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;FONT Color=red&amp;gt;'''&lt;/ins&gt;Riferimenti&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;'''&amp;lt;/font&amp;gt;&lt;/ins&gt;=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;E' assolutamente necessario leggere queste pagine della Wiki ufficiale:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;E' assolutamente necessario leggere queste pagine della Wiki ufficiale:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''http://gambaswiki.org/wiki/doc/object-model?l=it'''&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''http://gambaswiki.org/wiki/doc/object-model?l=it'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* http://gambaswiki.org/wiki/doc/object-model&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* http://gambaswiki.org/wiki/doc/object-model&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40074&amp;oldid=prev</id>
		<title>Vuott il 18:38, 10 nov 2024</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40074&amp;oldid=prev"/>
		<updated>2024-11-10T18:38:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 12:38, 10 nov 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Riga 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In Gambas, il concetto e la logica degli ''Oggetti'' è stata fortemente implementata; infatti, nel linguaggio base esistono due categorie: '''Classe''' e '''Modulo'''.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In Gambas, il concetto e la logica degli ''Oggetti'' è stata fortemente implementata; infatti, nel linguaggio base esistono due categorie: '''Classe''' e '''Modulo'''.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Queste due categorie, nella realtà, hanno pochissime differenze, nel senso che in ogni caso sono basate sul concetto di '''[[#&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Note&lt;/del&gt;|Oggetto]]'''. '''&amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 1]]&amp;amp;#093;&amp;lt;/sup&amp;gt;'''  &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 2]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;BR&amp;gt;Queste due categorie, nella realtà, hanno pochissime differenze, nel senso che in ogni caso sono basate sul concetto di '''[[#&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Riferimenti&lt;/ins&gt;|Oggetto]]'''. '''&amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 1]]&amp;amp;#093;&amp;lt;/sup&amp;gt;'''  &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 2]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Tipologia delle Classi=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Tipologia delle Classi=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40073&amp;oldid=prev</id>
		<title>Vuott il 18:36, 10 nov 2024</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=40073&amp;oldid=prev"/>
		<updated>2024-11-10T18:36:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;it&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versione meno recente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versione delle 12:36, 10 nov 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l335&quot;&gt;Riga 335:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 335:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Riferimenti=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Riferimenti=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;E' assolutamente necessario leggere queste pagine della Wiki ufficiale:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''http://gambaswiki.org/wiki/doc/object-model?l=it'''&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''http://gambaswiki.org/wiki/doc/object-model?l=it'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* http://gambaswiki.org/wiki/doc/object-model&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* http://gambaswiki.org/wiki/doc/object-model&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
	<entry>
		<id>https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=39454&amp;oldid=prev</id>
		<title>Vuott: Creata pagina con &quot;In Gambas, il concetto e la logica degli ''Oggetti'' è stata fortemente implementata; infatti, nel linguaggio base esistono due categorie: '''Classe''' e '''Modulo'''. &lt;BR&gt;Qu...&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.gambas-it.org/wiki/index.php?title=Oggetti,_Classi_e_Moduli&amp;diff=39454&amp;oldid=prev"/>
		<updated>2024-10-18T00:47:25Z</updated>

		<summary type="html">&lt;p&gt;Creata pagina con &amp;quot;In Gambas, il concetto e la logica degli &amp;#039;&amp;#039;Oggetti&amp;#039;&amp;#039; è stata fortemente implementata; infatti, nel linguaggio base esistono due categorie: &amp;#039;&amp;#039;&amp;#039;Classe&amp;#039;&amp;#039;&amp;#039; e &amp;#039;&amp;#039;&amp;#039;Modulo&amp;#039;&amp;#039;&amp;#039;. &amp;lt;BR&amp;gt;Qu...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nuova pagina&lt;/b&gt;&lt;/p&gt;&lt;div&gt;In Gambas, il concetto e la logica degli ''Oggetti'' è stata fortemente implementata; infatti, nel linguaggio base esistono due categorie: '''Classe''' e '''Modulo'''.&lt;br /&gt;
&amp;lt;BR&amp;gt;Queste due categorie, nella realtà, hanno pochissime differenze, nel senso che in ogni caso sono basate sul concetto di '''[[#Note|Oggetto]]'''. '''&amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 1]]&amp;amp;#093;&amp;lt;/sup&amp;gt;'''  &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 2]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tipologia delle Classi=&lt;br /&gt;
Possiamo distinguere le '''Classi''' sotto il profilo della loro origine in tre diversi tipi:&lt;br /&gt;
&lt;br /&gt;
1) le ''Classi'' &amp;quot;[https://gambaswiki.org/wiki/comp/gb?l=it native ]&amp;quot; di Gambas: sono quelle ''Classi'' che appartengono di per sé all'architettura del linguaggio Gambas (ad esempio la ''Classe'' &amp;quot;Object&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
2) le ''Classi'' che &amp;quot;derivano&amp;quot; da librerie e sistemi esterni (ad esempio la ''Classe'' &amp;quot;Music&amp;quot; del Componente gb.media è costituita implementando in essa le risorse della libreria multimediale di ''GStreamer'');&lt;br /&gt;
&lt;br /&gt;
3) le ''Classi'' &amp;quot;specifiche&amp;quot; create dal programmatore nel progetto per particolari esigenze di programmazione. &lt;br /&gt;
&lt;br /&gt;
=Differenza fra Classe e Modulo=&lt;br /&gt;
La differenza sostanziale tra queste due implementazioni, è che la '''''Classe''''' può possedere e pertanto fornire &amp;quot;Proprietà&amp;quot;, &amp;quot;Metodi&amp;quot;, &amp;quot;Eventi&amp;quot;, &amp;quot;Variabili&amp;quot; e &amp;quot;Costanti&amp;quot;, mentre il '''''Modulo''''' non può possedere &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;propri&amp;lt;/span&amp;gt; &amp;quot;Eventi&amp;quot;.&lt;br /&gt;
&amp;lt;BR&amp;gt;Inoltre, un altro fondamentale elemento di differenza rispetto alla Classe è dato dalla circostanza che il ''Modulo'' non è altro che un contenitore di Funzioni e/o di Variabili e/o di Costanti, che vengono referenziate agendo sul ''Modulo'' stesso.&lt;br /&gt;
&amp;lt;BR&amp;gt;Ciò significa che per richiamare e fruire di una risorsa del ''Modulo'' basterà utilizzare il nome identificatore del ''Modulo'' stesso.&lt;br /&gt;
&amp;lt;BR&amp;gt;Così, se ad esempio il ''Modulo'' è stato chiamato dal programmatore &amp;quot;mio_modulo.module&amp;quot;, e possiede un &amp;quot;Metodo&amp;quot;, chiamato &amp;quot;Metododelmodulo()&amp;quot;, per invocare detto &amp;quot;Metodo&amp;quot; nel codice basterà scrivere:&lt;br /&gt;
 mio_modulo.Metododelmodulo()&lt;br /&gt;
Il concetto di base, però, è identico a quello della ''Classe'', tranne per il fatto che &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;di un ''Modulo''&amp;lt;/span&amp;gt;, a differenza di una ''Classe'', &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;non possono essere creati dinamicamente &amp;quot;Oggetti&amp;quot;&amp;lt;/span&amp;gt; (non possono essere create &amp;quot;istanze&amp;quot; del ''Modulo''): una volta stabilita la sua funzione all'interno di un'applicazione, e definiti i suoi &amp;quot;Metodi&amp;quot; interni, il ''Modulo'' rimane &amp;quot;''statico'' &amp;quot; all'interno del programma. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 3]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;Il discorso è molto simile, se non completamente analogo, alle ''Classi'' &amp;quot;statiche&amp;quot; contenute nelle librerie di base di Gambas, come ad esempio &amp;quot;gb&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Diversamente, una ''Classe'', perché possa fornire concretamente le risorse (&amp;quot;Proprietà&amp;quot;, &amp;quot;Metodi&amp;quot;, &amp;quot;Eventi&amp;quot;, &amp;quot;Variabili&amp;quot; e &amp;quot;Costanti&amp;quot;) possedute, deve essere &amp;quot;istanziata&amp;quot;, ossia è necessario che vengano &amp;quot;creati&amp;quot; (con la parola-chiave &amp;quot;NEW&amp;quot;) dei singoli Oggetti della ''Classe''.&lt;br /&gt;
 Dim oggetto As NEW CLASSE&lt;br /&gt;
Un '''[[#Note|Oggetto]]''' '''&amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 1]]&amp;amp;#093;&amp;lt;/sup&amp;gt;''' in Gambas è una struttura di dati che fornisce concretamente Proprietà, Metodi ed Eventi, previsti in astratto dalla &amp;quot;Classe&amp;quot; alla quale esso appartiene. &lt;br /&gt;
&amp;lt;BR&amp;gt;Di una ''Classe'' è possibile creare anche più &amp;quot;Oggetti&amp;quot; individuali.&lt;br /&gt;
&amp;lt;BR&amp;gt;Pertanto, a differenza del ''Modulo'' la ''Classe'' - purché non sia di tipo ''[[CREATE_PRIVATE...CREATE_STATIC|Statico]]'' - non può essere utilizzata in modo diretto nel codice, ma deve essere utilizzata &amp;quot;mediante&amp;quot; suoi Oggetti: deve essere &amp;quot;istanziata&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
All'interno di un progetto, si ha la possibilità di creare, sia nuove ''Classi'', che nuovi ''Moduli''; il nome dei file assumono l'estensione &amp;quot;'''.module'''&amp;quot; per i ''Moduli'', e &amp;quot;'''.class'''&amp;quot; per le ''Classi''. Discorso leggermente diverso per gli oggetti grafici (esempio le Form), che creano un'ulteriore file &amp;quot;'''.form'''&amp;quot;, contenente la definizione delle caratteristiche grafiche dell'oggetto e degli elementi inclusi in esso.&lt;br /&gt;
&lt;br /&gt;
A differenza di una ''Classe'', un ''Modulo'' (come già detto) non può essere creato (esiste, e basta!), per cui non ha alcun ''Costruttore'', e di conseguenza nessun ''Distruttore'' (vedi '''_new()''' e '''_free()''' in [[Metodi nascosti]]) e non possiede propri ''Eventi'', né può sollevarne attraverso l'istruzione &amp;quot;''[[Gli_eventi#Creare_un_Evento_proprio_di_un_Oggetto_creato_dall.27utente_-_L.27istruzione_Event|Event]]'' &amp;quot;. &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 4]]&amp;amp;#093;&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ricapitolando possiamo dire che:&lt;br /&gt;
 * La &amp;lt;FONT Color=red&amp;gt;&amp;lt;B&amp;gt;CLASSE&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;:&lt;br /&gt;
 &amp;lt;BR&amp;gt; - per essere utilizzata &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;deve&amp;lt;/span&amp;gt; essere &amp;quot;istanziata&amp;quot;. Le risorse di una ''Classe'' sono dunque utilizzabili esclusivamente attraverso la creazione &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;uno o più&amp;lt;/span&amp;gt; ''Istanze/Oggetti'', rappresentati da variabili identficatrici del tipo della ''Classe'' specifica.&lt;br /&gt;
 &amp;lt;BR&amp;gt; -  possiede '''propri''' ''Eventi'', e può sollevarne mediante le combinate istruzioni &amp;quot;Event&amp;quot; e &amp;quot;Raise&amp;quot;.&lt;br /&gt;
 &lt;br /&gt;
 * Il &amp;lt;FONT Color=#006400&amp;gt;&amp;lt;B&amp;gt;MODULO&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;:&lt;br /&gt;
 &amp;lt;BR&amp;gt; - può essere utilizzato esclusivamente in modo diretto attraverso il suo nome identificatore. &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;Non&amp;lt;/span&amp;gt; è possibile creare Istanze/Oggetti di un ''Modulo''. &lt;br /&gt;
 &amp;lt;BR&amp;gt; - &amp;lt;U&amp;gt;non&amp;lt;/u&amp;gt; possiede propri ''Eventi'' (sebbene possa comunque contenere routine relative ad Eventi di altre Classi), &amp;lt;U&amp;gt;né&amp;lt;/u&amp;gt; può sollevarne mediante le combinate istruzioni &amp;quot;Event&amp;quot; e &amp;quot;Raise&amp;quot;.&lt;br /&gt;
La ''Classe'' '''Statica''' ha un comportamento identico al ''Modulo'' ed è a questo in tutto paragonabile.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Esempi===&lt;br /&gt;
Nei seguenti esempi sono mostrati alcuni modi di utilizzo, sia riguardo alle ''Classi'', sia riguardo ai Moduli: &lt;br /&gt;
 &amp;lt;FONT Color=gray&amp;gt;' ''Esempio 1: creazione di una classe dinamica:''&amp;lt;/font&amp;gt;&lt;br /&gt;
  DIM &amp;lt;FONT Color=red&amp;gt;hWin&amp;lt;/font&amp;gt; AS '''NEW Window()'''&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;FONT Color=gray&amp;gt;' ''Esempio 2: referenziazione di una classe dinamica:''&amp;lt;/font&amp;gt;&lt;br /&gt;
  DIM &amp;lt;FONT Color=blue&amp;gt;hWin2&amp;lt;/font&amp;gt; AS '''Window'''&lt;br /&gt;
 &lt;br /&gt;
  '''&amp;lt;FONT Color=blue&amp;gt;hWin2&amp;lt;/font&amp;gt; = &amp;lt;FONT Color=red&amp;gt;hWin&amp;lt;/font&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;FONT Color=gray&amp;gt;' ''Esempio 3: utilizzo di una funzione Modulo:''&amp;lt;/font&amp;gt;&lt;br /&gt;
  DIM value AS Float = '''ModUtil.CalcoloPerc(10)'''&lt;br /&gt;
a) Nell'esempio 1 viene creato un nuovo oggetto di tipo Window, e referenziato dalla variabile hWin.&lt;br /&gt;
&lt;br /&gt;
b) Nell'esempio 2 viene definita una variabile (''hWin2'') di tipo ''Window'', che viene poi associata all'Oggetto precedente ''hWin''; in questo caso non viene creato un nuovo Oggetto, ma solo un riferimento a quello già esistente. &amp;lt;BR&amp;gt;In questo caso, l'eliminazione della variabile ''hWin2'' non distruggerà l'oggetto ''hWin'', ma toglierà solo il suo riferimento. In ogni caso la variabile precedente ''hWin'', ovvero il vero riferimento all'oggetto, manterrà sempre l'oggetto in memoria. L'eliminazione dell'oggetto dovrà essere eseguita agendo sul proprio Metodo &amp;quot;.Delete()&amp;quot; (se presente), o eliminando la stessa variabile ''hWin''.&lt;br /&gt;
&amp;lt;BR&amp;gt;E' da notare che, se viene cancellata la variabile originale ''hWin'', e viene mantenuta ''hWin2'', l'Oggetto resta comunque in memoria, dato che esiste comunque un suo riferimento valido. Questo giochetto può essere molto utile in alcuni casi, ma è necessario fare molta attenzione a non lasciare appesi riferimenti inutili.&lt;br /&gt;
&lt;br /&gt;
c) Nell'esempio 3 viene utilizzata una funzione interna al Modulo ModUtil: CalcoloPerc(). A parte la sua funzione specifica (è solo un esempio), il concetto è visibilmente diverso dall'utilizzo di una classe. L'uso della funzione CalcoloPerc() deve avvenire passando per il riferimento al Modulo ModUtil, ma l'utilizzo è immediato, come anche il valore di ritorno.&lt;br /&gt;
&lt;br /&gt;
====Variabili interne al Modulo====&lt;br /&gt;
Come per ''Classi'', i ''Moduli'' possono contenere variabili interne, statiche ('''STATIC'''), private ('''PRIVATE''') e/o pubbliche ('''PUBLIC'''), e anche costanti ('''CONST'''). Dipedentemente dalla loro dichiarazione, l'uso è identico a quello di una proprietà di classe, tranne per il fatto che la proprietà (o variabile) non viene creata, ma esiste nello stesso ambito del modulo.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
 '''' Gambas module file'''&lt;br /&gt;
 .&lt;br /&gt;
 '*** Modulo ModUtil ***&lt;br /&gt;
 .&lt;br /&gt;
 '''PUBLIC FUNCTION CalcoloPerc(value AS Float) AS Float'''&lt;br /&gt;
   ...&lt;br /&gt;
   ...&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Nell'esempio viene mostrato come può apparire il codice del modulo ModUtil, e il suo metodo (o funzione) interno.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
 '''' Gambas class file'''&lt;br /&gt;
 .&lt;br /&gt;
 '*** Classe MyWindow ***&lt;br /&gt;
 .&lt;br /&gt;
 '''PUBLIC SUB Form_Open()'''&lt;br /&gt;
   ...&lt;br /&gt;
   ...&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
In quest'altro esempio viene mostrato il codice di una Classe Window.&lt;br /&gt;
&lt;br /&gt;
Come si può notare, la struttura dei due file è molto simile (se non addirittura uguale); Gambas da parte sua, inserisce automaticamente un marcatore ad inizio file, ad evidenziare il tipo di file che si sta trattando. Ricordo che la modifica di questa nota non è permessa, e in ogni caso Gambas la reinserisce automaticamente.&lt;br /&gt;
&lt;br /&gt;
===Copia e clone di un Oggetto===&lt;br /&gt;
Per gli Oggetti, una copia equivale a copiare l'indirizzo in memoria dell'oggetto, e quindi il suo riferimento. Ogni modifica apportata su qualsiasi variabile che contenga il solo indirizzo, modifica di conseguenza l'Oggetto.&lt;br /&gt;
&lt;br /&gt;
Per avere invece un clone, ossia duplicato dell'Oggetto, è necessario usare il Metodo - laddove la Classe lo disponga - &amp;quot;.Copy()&amp;quot;, che crea un clone dell'Oggetto, ma in ''altra'' zona di memoria.&lt;br /&gt;
&amp;lt;BR&amp;gt;Non tutti gli oggetti base hanno un Metodo &amp;quot;.Copy()&amp;quot;; in tal caso caso è necessario implementarlo, creando un nuovo Oggetto e copiando le proprietà dell'originale sul nuovo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Particolari parole-chiave della Classe: ME - SUPER - INHERITS==&lt;br /&gt;
Come già descritto, le ''Classi'' differiscono dai moduli, principalmente per il fatto che possono e devono essere creati e istanziati.&lt;br /&gt;
Oltre a questo, hanno alcune particolarità, che ne semplificano l'uso, e oltre tutto devono obbligatoriamente possedere, per poter gestire un oggetto in maniera umana.&lt;br /&gt;
A parte i propri metodi e le loro proprietà, che dipendono dal tipo di oggetto e dal tipo di funzione che deve svolgere, esistono delle parole chiave, con lo scopo di fornire elementi utili al loro utilizzo.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ME - Riferimento a se stesso===&lt;br /&gt;
&lt;br /&gt;
La ''parola chiave'' &amp;lt;SUP&amp;gt;&amp;amp;#091;[[#Note|Nota 5]]&amp;amp;#093;&amp;lt;/sup&amp;gt; '''ME''' è messa a disposizione per poter puntare all'oggetto, all'interno di se stesso; cosa che altrimenti non sarebbe fattibile.&lt;br /&gt;
Come per i moduli, che si referenziano esternamente, dichiarando il nome del modulo stesso, per le classi, all'interno dei loro metodi, si può avere un riferimento allo stesso oggetto con '''ME'''.&lt;br /&gt;
----&lt;br /&gt;
 &lt;br /&gt;
 ' Gambas class file&lt;br /&gt;
 .&lt;br /&gt;
 '*** Classe Form ***&lt;br /&gt;
 .&lt;br /&gt;
 PUBLIC SUB Form_Open()&lt;br /&gt;
   ...&lt;br /&gt;
   '''ME'''.Caption = &amp;quot;Nome della Form&amp;quot;&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Nell'esempio viene impostato il testo che comparirà sulla testata della Form; come si può notare, il riferimento alla Form (ovverro a se stessa), viene fatto da '''ME'''. Il punto che segue indica al compilatore di Gambas, che il nome che seguirà sarà un riferimento ad una proprietà o un metodo interno alla classe (in questo caso Caption).&lt;br /&gt;
----&lt;br /&gt;
 &lt;br /&gt;
 ' Gambas class file&lt;br /&gt;
 .&lt;br /&gt;
 '*** Classe Form ***&lt;br /&gt;
 .&lt;br /&gt;
 PUBLIC SUB Form_Open()&lt;br /&gt;
   ...&lt;br /&gt;
   '''WITH ME'''&lt;br /&gt;
     ...&lt;br /&gt;
     '''.Caption''' = &amp;quot;Nome della Form&amp;quot;&lt;br /&gt;
     '''.X''' = 0&lt;br /&gt;
     '''.Y''' = 0&lt;br /&gt;
     ...&lt;br /&gt;
   '''END WITH'''&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
La sintassi di quest'altro esempio è la stessa, la differenza stà nel fatto di aver utilizzato la sintassi '''WITH...END WITH'''. Questo tipo di sintassi permette di stabilire a priori che si vogliono modificare solo elementi della classe, per cui non c'è più bisogno della parola '''ME''', per cui i riferimenti verranno fatti iniziando i nomi delle proprietà di classe con il punto. E' sottinteso che questa logica è valida anche per i metodi, non solo per le proprietà:&lt;br /&gt;
----&lt;br /&gt;
 &lt;br /&gt;
 ' Gambas class file&lt;br /&gt;
 .&lt;br /&gt;
 '*** Classe Form ***&lt;br /&gt;
 .&lt;br /&gt;
 PUBLIC SUB Form_Open()&lt;br /&gt;
   ...&lt;br /&gt;
   WITH ME&lt;br /&gt;
     ...&lt;br /&gt;
     .Caption = &amp;quot;Nome della Form&amp;quot;&lt;br /&gt;
     .X = 0&lt;br /&gt;
     .Y = 0&lt;br /&gt;
     ...&lt;br /&gt;
     '''.Init()'''&lt;br /&gt;
     ...&lt;br /&gt;
   END WITH&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
 ...&lt;br /&gt;
 ...&lt;br /&gt;
 ...&lt;br /&gt;
 PUBLIC SUB Init()&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Come si può notare, all'interno di '''WITH''', è presente anche la chiamata al metodo Init(), che appartiene alla stessa classe.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SUPER - Riferimento alla classe superiore===&lt;br /&gt;
&lt;br /&gt;
Un oggetto (o classe) può essere derivata da un oggetto (o classe) superiore; in questo caso la nuova classe assume tutte le caratteristiche PUBLIC della classe padre, e la possibilità di espanderne le proprietà e/o specializzarne la funzione. Un esempio è la classe ''CheckBox'', che deriva dalla classe ''Control''.&lt;br /&gt;
----&lt;br /&gt;
 &lt;br /&gt;
 ' Gambas class file&lt;br /&gt;
 .&lt;br /&gt;
 '*** Classe MyWindow ***&lt;br /&gt;
 .&lt;br /&gt;
 '''INHERITS Window'''&lt;br /&gt;
 .&lt;br /&gt;
 PUBLIC SUB Window_Open()&lt;br /&gt;
   ...&lt;br /&gt;
   WITH ME&lt;br /&gt;
     ...&lt;br /&gt;
     .Caption = &amp;quot;Nome della Window&amp;quot;&lt;br /&gt;
     .X = 0&lt;br /&gt;
     .Y = 0&lt;br /&gt;
     ...&lt;br /&gt;
   END WITH&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Nell'esempio è mostrato il codice della classe MyWindow, che deriva dalla classe base ''Window'' di Gambas. La nuova classe assume tutte le caratteristiche PUBLIC della classe ''Window'', comprese le proprietà, i metodi e i gestori di evento. A questo punto non è necessario riscriverne le proprietà, dato che sono già impostate a livello di classe padre; al più possiamo aggiungerne di altre, specializzando la funzione di questo nuovo oggetto.&lt;br /&gt;
In realtà è anche possibile sovrascrivere una specifica funzionalità, rispetto alla classe padre; in questo caso è sufficiente ricreare il metodo, scrivendoci dentro il codice desiderato.&lt;br /&gt;
Ma come facciamo a interagire con la classe padre? Semplice, in questo caso ci viene in aiuto un'altra parola chiave: '''SUPER'''.&lt;br /&gt;
Ogni qualvolta entriamo in un metodo, che abbiamo sovrascritto per nostra necessità, possiamo chiamare il metodo della classe padre:&lt;br /&gt;
----&lt;br /&gt;
 &lt;br /&gt;
 ' Gambas class file&lt;br /&gt;
 .&lt;br /&gt;
 '*** Classe MyWindow ***&lt;br /&gt;
 .&lt;br /&gt;
 INHERITS Window&lt;br /&gt;
 .&lt;br /&gt;
 PUBLIC SUB Resize()&lt;br /&gt;
   ...&lt;br /&gt;
   '''SUPER.Resize()'''&lt;br /&gt;
   ...&lt;br /&gt;
 END&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Nell'esempio viene utilizzato il metodo ''.Resize'', nel quale abbiamo scritto codice adatto ai nostri scopi, e poi eseguiamo anche la stessa funzione nella classe padre, che potrebbe essere necessaria, in questo caso, a risolvere e attuare eventuali aggiustamenti alla Window.&lt;br /&gt;
&lt;br /&gt;
===INHERITS===&lt;br /&gt;
Nello stesso esempio è presente anche un'altra parola chiave: '''[[INHERITS]]'''.&lt;br /&gt;
&lt;br /&gt;
==Metodi nascosti==&lt;br /&gt;
Per ogni oggetto, sia che venga creato da noi, sia che faccia parte delle librerie standard di Gambas, esistono dei metodi, nascosti, che possono essere utilizzati per condizionare la creazione, o meno, dell'oggetto stesso. Questi metodi sono descritti in [[Metodi nascosti]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Classi ''virtuali''==&lt;br /&gt;
Tobias Boege, membro della Mailing list ufficiale di Gambas, descrive quanto segue:&lt;br /&gt;
&amp;lt;BR&amp;gt;«''Esistono due tipi di classi virtuali: classi &amp;quot;native&amp;quot; e classi &amp;quot;virtuali&amp;quot; di Gambas.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''E' possibile distinguerle approssimativamente dal Componente da cui provengono o dal primo carattere nel loro nome;''&lt;br /&gt;
&amp;lt;BR&amp;gt;* ''un punto iniziale significa nativo (ad es. .Menu.Children dal Componente nativo gb.qt4 o .Watch.Events da gb.inotify);''&lt;br /&gt;
&amp;lt;BR&amp;gt;* ''un trattino basso che significa che è scritto in Gambas (ad es. _MapTile in gb.map).&lt;br /&gt;
&amp;lt;BR&amp;gt;''Questa denominazione non è un requisito ma una convenzione.''&lt;br /&gt;
&lt;br /&gt;
''Una classe virtuale ha lo scopo di fornire un'interfaccia alternativa a una parte di un oggetto. Nei componenti nativi, una proprietà virtuale viene spesso implementata restituendo lo stesso oggetto esatto ma dicendo all'interprete di &amp;quot;eseguirne il cast&amp;quot; in un'altra classe, in modo da disporre di un set di Metodi più specializzato. Molti componenti si basano sul presupposto che possono semplicemente inserire alcuni dati in un campo nella struttura dati sottostante dell'oggetto e restituire se stessi per implementare una proprietà virtuale e che i dati non verranno toccati fino a quando l'oggetto virtuale non viene eseguito.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''L'accessorio di proprietà di solito imposta una sorta di flag o registra alcuni parametri di accesso come lo slot delle impostazioni in _Settings_Keys._get () in modo che i metodi più specializzati sappiano dove si vuole che funzionino.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''Si può vedere che con il nome delle classi virtuali native: .Menu.Children è una classe virtuale per la gestione della proprietà .Children di un oggetto Menu e .Watch.Events fa lo stesso per .Events di un Watch.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''In realtà, le classi virtuali di Gambas (quelle che non sono native) sono solo normali classi. La &amp;quot;fusione di parte di un oggetto in una classe diversa&amp;quot; è una funzionalità strettamente nativa. Probabilmente non dovrebbero nemmeno essere chiamati &amp;quot;virtuali&amp;quot; ma sono spesso usati per lo stesso scopo. Il carattere di sottolineatura principale viene generalmente utilizzato per nascondere le classi, ad es. al popup di completamento automatico IDE. Si potrebbe teoricamente archiviare questi oggetti in un array, ma neanche questo è sicuro, a seconda di quali ipotesi la Classe faccia durante la sua vita.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''Ora è possibile vedere il problema: gli oggetti virtuali in realtà non esistono. Sono solo una vista volatile su una parte specifica di un oggetto. Quindi non è possibile porli in un array. Le Classi virtuali possono essere dichiarate nei Componenti nativi, ma non sono creabili e hanno sempre la dimensione zero.''&lt;br /&gt;
&lt;br /&gt;
''Una Proprietà o un Metodo virtuale consente di eseguire del codice nell'implementazione della proprietà o del metodo, che di solito registra solo alcuni dati nella memoria dell'oggetto e quindi restituisce l'oggetto stesso tramite RETURN_SELF (GB_PROPERTY_SELF è una scorciatoia per restituire se stessi e non fare nulla altro), ma l'interprete considera il valore restituito (sempre lo stesso oggetto) non come del suo vero tipo ma del tipo restituito indicato nella dichiarazione di proprietà.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''Improvvisamente, lo stesso oggetto assume un'interfaccia completamente diversa, nuovi metodi, nuove proprietà. Ma è la stessa regione in memoria, quindi le implementazioni di queste nuove proprietà e metodi possono accedere all'oggetto originale. Viene normalmente utilizzato per fornire una vista specializzata sull'oggetto.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''Tutto ciò implica, tra l'altro, che non è possibile archiviare oggetti virtuali in memoria, poiché sono solo viste temporanee su un altro oggetto. E l'uso di oggetti virtuali è intrinsecamente pericoloso per i ''thread'' poiché, a seconda della rispettiva implementazione, nel processo potrebbe esserci un solo oggetto virtuale per un determinato oggetto reale in qualsiasi momento.''&lt;br /&gt;
&lt;br /&gt;
''Non è possibile implementare classi virtuali in Gambas. Lo si può fare solo usando l'API C/C ++ nativa dell'interprete, che ha la magia di cambiare un BLOB di descrizione dell'interfaccia con un altro. Tutto ciò che viene scritto in ​​Gambas è una vera classe in cui non si può staccare la memoria dall'interfaccia.&lt;br /&gt;
&amp;lt;BR&amp;gt;''Le classi virtuali sono in realtà solo un trucco nell'interprete per &amp;quot;eseguire il cast parametrico&amp;quot; di un oggetto in un'altra classe per non inquinare, per esempio, l'interfaccia diretta della classe Array con metodi e proprietà correlati ai suoi limiti, poiché quelli possono essere nascosti in un vista virtuale sull'array.''&lt;br /&gt;
&amp;lt;BR&amp;gt;''Le classi virtuali consentono di fare ciò:''&lt;br /&gt;
&amp;lt;BR&amp;gt;''1) in modo non dispendioso (perché tutto ciò che deve essere fatto è sostituire il puntatore al tipo di un oggetto);''&lt;br /&gt;
&amp;lt;BR&amp;gt;''2) senza dover creare nuovi oggetti e quindi creare interfacce della classe originale (semi-) pubblico in modo che questi nuovi oggetti possano accedervi.''&lt;br /&gt;
&lt;br /&gt;
''Il solito modo di emulare questo in Gambas è:''&lt;br /&gt;
&amp;lt;BR&amp;gt;''- creare Classi reali per le viste virtuali, come _Array_Bounds con un Costruttore di _new (RealObject As Array);''&lt;br /&gt;
&amp;lt;BR&amp;gt;''- Array.Bounds restituisce una nuova istanza di questo _Array_Bounds e passa il riferimento &amp;quot;Me&amp;quot; al Costruttore;''&lt;br /&gt;
&amp;lt;BR&amp;gt;''- la classe Array deve rendere pubblici alcuni interni in modo che _Array_Bounds possa accedervi, essendo ora un oggetto diverso.''&lt;br /&gt;
&lt;br /&gt;
''Solitamente questi sono preceduti da un trattino basso in modo che l'IDE li nasconda dalle opinioni delle persone normali.'' »&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Un indice delle Classi di Gambas=&lt;br /&gt;
Nella seguente pagina web è possibile vedere un elenco della Classi di Gambas:&lt;br /&gt;
 https://www.gambas.one/classes/&lt;br /&gt;
Ogni Classe è collegata alla rispettiva pagina della Wiki ufficiale di Gambas. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=Note=&lt;br /&gt;
[1] Bisogna ricordare che un ''Oggetto'' non è altro che una ''Classe istanziata''.&lt;br /&gt;
 oggetto = New Classe&lt;br /&gt;
laddove la variabile ''oggetto'' è appunto un ''Oggetto''.&lt;br /&gt;
&amp;lt;BR&amp;gt;Con parola-chiave ''New''  viene creato un ''Oggetto'', appartenente ad una specifica ''Classe'', allocando automaticamente la necessaria quantità di memoria richiesta per esso e che così rappresenta la struttura interna dell'Oggetto medesimo.&lt;br /&gt;
&amp;lt;BR&amp;gt;Infatti, gli &amp;quot;Oggetti&amp;quot; in Gambas sono costituiti da Strutture e Sub-Strutture, scritte in C, che ovviamente occupano memoria.&lt;br /&gt;
&lt;br /&gt;
E' il caso di sottolineare che è un errore l'uso - come &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;''argomento''&amp;lt;/span&amp;gt; di una funzione - di una variabile di un Oggetto che &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;non sia stato creato&amp;lt;/span&amp;gt; con la parola ''New'' o che non derivi dal ritorno di altra funzione oppure che non sia associata a un Oggetto della medesima Classe. &lt;br /&gt;
&lt;br /&gt;
La variabile che funge da ''Puntatore'' a un ''Oggetto'' sovente è definita &amp;quot;''Handle'' &amp;quot; (maniglia), che rappresenta &amp;quot;''una variabile associata a un oggetto complesso, che lo identifica''&amp;quot;. La maniglia è la &amp;quot;protuberanza&amp;quot;, con la quale si interagisce con l'&amp;lt;I&amp;gt;Oggetto&amp;lt;/i&amp;gt;. In Gambas, qualsiasi ''Oggetto'' (Form, o altro) è dunque in sostanza un &amp;quot;''Handle'' &amp;quot;.&lt;br /&gt;
Questo &amp;quot;handle&amp;quot;, questa variabile che rappresenta l'Oggetto di una ''Classe'', dunque individua, indica e in certo senso fornisce al programmatore la prima cella di memoria della Struttura principale che costituisce l'Oggetto medesimo.&lt;br /&gt;
&amp;lt;BR&amp;gt;Questa prima cella di memoria, ove inizia la memoria riservata dal sistema per l'esistenza e la funzionalità dell'Oggetto di una ''Classe'', possiede ovviamente un Indirizzo.&lt;br /&gt;
&amp;lt;BR&amp;gt;La variabile di un Oggetto, puntando all'area di memoria riservata all'Oggetto, punta dunque a quell'Indirizzo di memoria, si riferisce esplicitamente a quella cella di memoria; anzi esso contiene come valore proprio l'indirizzo di memoria di quella cella.&lt;br /&gt;
&lt;br /&gt;
In Gambas gli ''Oggetti'' sono entità individuali concrete di un ''insieme'' più ampio, di un Universale che li trascende, chiamato ''Classe'', e che rappresenta per essi un Modello, una Categoria ''assoluta'' delle loro caratteristiche (''Proprietà'', ''Metodi'', ''Eventi'', ''Variabili'' e ''Costanti'') possedute che li distinguono dagli ''Oggetti'' appartenenti ad altre ''Classi''.&lt;br /&gt;
&amp;lt;BR&amp;gt;Pertanto gli ''Oggetti'', singolarità di una ''Classe'', per esistere devono, come ogni entità concreta immanente, essere &amp;lt;SPAN Style=&amp;quot;text-decoration:underline&amp;quot;&amp;gt;creati&amp;lt;/span&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Una ''Classe'' concettualmente è ciò che è comune a più realtà individuali e concrete: gli ''Oggetti'', accomunati tutti dalla circostanza di possedere e di fornire le risorse della ''Classe'', alla quale essi appartengono. La ''Classe'', dunque, è un &amp;quot;insieme&amp;quot; che raggruppa molti elementi individuali - gli ''Oggetti'' - che posseggono caratteristiche comuni.&lt;br /&gt;
&amp;lt;BR&amp;gt;Tali caratteristiche in Gambas possono essere rappresentate dalle seguenti risorse:&lt;br /&gt;
* '''Proprietà''' (capacità dell'Oggetto di assumere una qualità);&lt;br /&gt;
* '''Metodi''' (capacità dell'Oggetto di compiere un'operazione);&lt;br /&gt;
* '''Eventi''' (capacità dell'Oggetto di far accadere qualcosa in caso di una sua sollecitazione);&lt;br /&gt;
* '''Variabili''';&lt;br /&gt;
* '''Costanti'''.&lt;br /&gt;
La &amp;quot;Classe&amp;quot;, dunque, è un sistema organico di risorse tra loro coerenti per la realizzazione di una o più finalità.&lt;br /&gt;
&amp;lt;BR&amp;gt;La ''Classe'', come già detto, è il ''modello'' contenente specifiche caratteristiche (Metodi, Proprietà, Eventi, Variabili e Costanti), al quale fanno riferimento singoli elementi: gli ''Oggetti''. In tal senso gli ''Oggetti'' appartengono ad una ''Classe'', ossia sono la rappresentazione concreta delle caratteristiche e delle potenzialità di una ''Classe''. Essi sono gli elementi capaci di fornire concretamente al programmatore ed all'utente le funzionalità della ''Classe'', alla quale essi appartengono. Infatti, la ''Classe'' in sé non può essere utilizzata ''sic et simpliciter'' all'interno di un codice (ad eccezione delle Classi ''Statiche''), giacché essa &amp;lt;SPAN Style=&amp;quot;text-decortion:undeline&amp;quot;&amp;gt;solo in astratto&amp;lt;/span&amp;gt; possiede alcune specifiche funzionalità. Tali capacità possono essere ''concretamente'' utilizzate solo attraverso elementi individuali, gli ''Oggetti'', che alla ''Classe'' (astratta) fanno riferimento.&lt;br /&gt;
&amp;lt;BR&amp;gt;La ''Classe'' specifica, dunque, le sue caratteristiche e funzionalità, le quali potranno essere utilizzate e gestite mediante gli ''Oggetti''. In particolare la ''Proprietà'' di un ''Oggetto'' è un'informazione definibile come ''attributo'' dell'&amp;lt;I&amp;gt;Oggetto&amp;lt;/i&amp;gt; medesimo.&lt;br /&gt;
&amp;lt;BR&amp;gt;Tali funzionalità e caratteristiche (Metodi, Proprietà, Eventi, Variabili e Costanti) di una ''Classe'' sono tra loro coerenti ed organici alle specificità ed alle potenzialità della ''Classe'', in modo tale che la ''Classe'' possa svolgere i compiti, per i quali fu creata.&lt;br /&gt;
&amp;lt;BR&amp;gt;La ''Classe'' è l'elemento ''astratto'', nella quale sono definite determinate funzionalità, compiti e caratteristiche (Metodi, Proprietà, Eventi, Variabili e Costanti); mentre l'&amp;lt;I&amp;gt;Oggetto&amp;lt;/i&amp;gt; è l'elemento ''concreto'', virtualmente materiale, utilizzabile nel codice, e che rende possibile l'uso delle potenzialità della ''Classe'', alla quale esso appartiene. In sostanza la ''Classe'' è utilizzabile solo attraverso gli ''Oggetti'' che ad essa si riferiscono.&lt;br /&gt;
&amp;lt;BR&amp;gt;La ''dinamicità'' della ''Classe'' è dovuta anche a questa sua capacità e necessità di esteriorizzarsi, di concretizzarsi in una possibile molteplicità di elementi (gli ''Oggetti'') che ad essa si riferiscono, e che la rendono così effettivamente utilizzabile nel codice e, dunque, nel programma.&lt;br /&gt;
&amp;lt;BR&amp;gt;Tale &amp;lt;SPAN Style=&amp;quot;Text-decoration:underline&amp;quot;&amp;gt;non&amp;lt;/span&amp;gt; staticità di una &amp;quot;Classe&amp;quot; consente al programmatore di creare più Oggetti di essa (questa facoltà non è consentita ad esempio per le Classi statiche e per i Moduli che sono &amp;quot;statici&amp;quot; per propria natura).&lt;br /&gt;
&lt;br /&gt;
Per comprendere a pieno il concetto di &amp;quot;''istanza''&amp;quot; di una ''Classe'', è opportuno comprendere l'etimo della parola, che proveniendo dal latino &amp;quot;''in'' + ''sto''&amp;quot;, vuol significare &amp;quot;''stare in''&amp;quot;, e quindi &amp;quot;''stare nel (mondo)''&amp;quot;, &amp;quot;''starci''&amp;quot;, &amp;quot;''esistere nella (realtà)''&amp;quot;.&lt;br /&gt;
Una ''Classe'' in quanto ''modello'' non esiste nel/sul mondo, ossia concretamente, è semplicemente un predicato astratto, un paradigma.&lt;br /&gt;
Se la ''Classe'' si fa concreta, si ''in-stanzia'', ossia si ''in-pone'' nella realtà concreta del programma, diventa gestibile in modo effettivo, virtualmente tangibile: diventa insomma un &amp;quot;''Oggetto''&amp;quot;. L'''Oggetto'' si pone, sta nel ''mondo'' del programma informatico con una sua individualità, definita e condizionata da funzionalità e caratteristiche che rimandano necessariamente alla sua ''Classe'' di appartenenza.&lt;br /&gt;
&lt;br /&gt;
Per accedere all'uso delle risorse (Metodi, Proprietà, Eventi, Variabili e Costanti) di una ''Classe'' si adopererà l'operatore &amp;quot;'''.'''&amp;quot; che distingue la variabile - identificatrice dell'Oggetto costruito - dalla sua risorsa, specificandone nello stesso tempo tipo e appartenenza:&lt;br /&gt;
 nome_variabile'''.'''nome_risorsa&lt;br /&gt;
&lt;br /&gt;
[2] Vedere anche le seguenti discussioni sul forum:&lt;br /&gt;
&amp;lt;BR&amp;gt; - https://www.gambas-it.org/smf/index.php?topic=933.0&lt;br /&gt;
&amp;lt;BR&amp;gt; - https://www.gambas-it.org/smf/index.php?topic=242&lt;br /&gt;
&lt;br /&gt;
[3] Minisini, rispondendo nella Mailing List ufficiale di Gambas, ha così brevemente definito il ''Modulo'':&lt;br /&gt;
 &amp;quot;''A module is just a class whose all methods and properties are static.''&lt;br /&gt;
 ''It's a thing coming from Visual Basic.''&lt;br /&gt;
 ''It's like a class, except everything is static.''&lt;br /&gt;
 ''It's static, that means it cannot be instantiated.''&amp;quot;&lt;br /&gt;
Va ricordato che a una Classe ''statica'' o a un Modulo (che è di per sé ''statico'') si può accedere senza bisogno di creare un'&amp;lt;I&amp;gt;istanza&amp;lt;/i&amp;gt; della Classe o del Modulo.&lt;br /&gt;
&lt;br /&gt;
[4] Un ''Modulo non'' può essere istanziato, non può creare il proprio ''Osservatore'', né può sollevare direttamente un Evento mediante l'istruzione &amp;quot;Event&amp;quot;. Per tanto un ''Modulo'' può solo “partecipare” agli Eventi pubblici di altre Classi.&lt;br /&gt;
&lt;br /&gt;
[5] La ''Parola-Chiave''  è una parola ''riservata'' del linguaggio di programmazione, che ''di norma'' non può essere utilizzata diversamente da ciò per cui è stata concepita.&lt;br /&gt;
&amp;lt;BR&amp;gt;Per esempio nella riga:&lt;br /&gt;
 Dim variabile As Integer&lt;br /&gt;
la parola &amp;quot;''Dim''&amp;quot; è una ''parola-chiave'', mentre non lo è la parola &amp;quot;''variabile''&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
In vero, però, &amp;lt;U&amp;gt;in Gambas&amp;lt;/u&amp;gt; una ''parola-chiave'' può essere utilizzata come identificativa di una variabile, purché posta fra due parentesi ''graffe'':&lt;br /&gt;
 Dim {Dim} As Integer&lt;br /&gt;
 &lt;br /&gt;
 {Dim} = 100000&lt;br /&gt;
  &lt;br /&gt;
 Print {Dim}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Riferimenti=&lt;br /&gt;
* '''http://gambaswiki.org/wiki/doc/object-model?l=it'''&lt;br /&gt;
* http://gambaswiki.org/wiki/doc/object-model&lt;/div&gt;</summary>
		<author><name>Vuott</name></author>
	</entry>
</feed>