Estendere le funzioni e le proprietà ereditateAbbiamo detto molto per quanto riguarda la teoria della successione dei componenti ColdFusion, e francamente, molto di esso è seriamente esagerate. Trasmissione parti il suo nome con il mondo orientato agli oggetti, ma che su tutto ciò che essa parti. Ereditarietà CFC possono essere facilmente riassumere con le seguenti tre istruzioni semplici:
Una componente può ereditare da estendere o un altro, dopo di che il componente ereditando può fare uso di proprietà di suo antenato e metodi. Se il componente che eredita dichiara i propri metodi di nome diverso da quelli della sua antenata, sia l'antenato di metodi e metodi del componente ereditando può essere chiamato con il componente eredita. Lo stesso vale per la dichiarazione di proprietà utilizzando nomi che non corrispondono i loro antenati. Se il componente che eredita dichiara i propri metodi lo stesso nome di quelli del suo predecessore, i metodi del componente eredita di ridefinire i metodi degli antenati con lo stesso nome, come se i metodi degli antenati sono nascosti. Lo stesso vale per la dichiarazione di proprietà utilizzando i nomi che corrispondono ai loro antenati. Just keep questi tre semplici principi in mente come si procede attraverso le seguenti parti e non credo che l'ereditarietà è più complicata di così. Ereditarietà ha poche applicazioni in real-sviluppo ColdFusion mondo, ma è probabile che constatare che esse sono rare. Tuttavia, si dovrebbe capire l'ereditarietà in modo da poter individuare i luoghi in cui l'applicazione può essere giustificata. È possibile utilizzare il pacchetto che si creano nei codici di conoscere l'estensione componenti. Anche se non abbiamo discuterne prima, abbiamo creato una proprietà nel componente Emp nome empProperty, come segue: Creazione di una variabile nel campo di applicazione di questo componente Emp variabile che rende una proprietà di tale componente. Ricorda che tutto il codice nella zona di un componente di inizializzazione viene eseguita una volta come un'istanza del componente è stato creato, il che significa che la proprietà empProperty viene automaticamente creato e inizializzato al valore originale Emp come ogni istanza del componente EMP è creato. È possibile modificare il valore di This.empProperty dopo che è stato inizializzato, e ogni istanza del componente Emp può contenere il proprio valore di empProperty. Se si eredita o estendere un componente, le funzioni e le proprietà degli antenati sono, in sostanza, copiato nella erede, in cui possono essere chiamati e utilizzati come se fossero una parte di erede. Quindi, se si crea un componente nominato Manager che estende il componente Emp, come illustrato nel codice, il componente di gestione contiene anche una proprietà nome empProperty. Manager estende Emp, in modo Manager eredita alcune proprietà Emp e le funzioni. Si noti inoltre che il codice precedente dichiara una proprietà direttamente in Gestione, denominata managersOwnProperty. Manager eredita le proprietà Emp, ma il processo è una strada a senso unico, in modo managersOwnProperty è disponibile solo nella componente Manager e, non nel componente Emp. Gli stessi principi di eredità che il lavoro per le proprietà dei componenti funzionano anche per le funzioni di componente. EMP componente contiene un bonus (), funzione che calcola il bonus dei dipendenti nonmanagerial, ma i manager fanno un ulteriore bonus del 15 per cento. Per calcolare i bonus manager, si estende la funzionalità del gestore dichiarando una funzione denominata ManagerBonus (), come mostrato nei codici. Per recuperare il bonus normale per un lavoratore dipendente, ManagerBonus () deve chiamare il Bonus () funzione che viene dichiarata nel componente Emp. Manager, ma si estende Emp, così Bonus () è disponibile come una delle funzioni proprie del gestore; tutte ManagerBonus () deve fare è tornare Bonus () moltiplicato per 1,15, come segue: Il codice mostra l'ereditarietà in azione. Come le proprietà e le funzioni di entrambi Emp e Manager sono accessibili direttamente da Gestione comunicazione.
Tutto quello che hai fatto finora è noto come l'estensione, perché si lascia tutte le funzionalità del componente antenato non modificato ed estendere solo con l'aggiunta di nuove funzioni e proprietà. Nel mondo orientato agli oggetti, questa tecnica è conosciuta come la specializzazione: Un manager è un lavoratore specializzato che fa le stesse cose di base, più alcuni più. Per utilizzare un altro paio di oggetto-oriented termini, un manager è un sottotipo di un dipendente, e il dipendente è il supertipo del gestore. Non ti appeso su questi termini, ricordiamo qui solo così che si può seguire il nelle discussioni inevitabile che si sente in confronto agli oggetti componenti. Prevalente sostituisce ereditato le proprietà e le funzioni con qualcosa di completamente diverso da ciò che è stato ereditato. Di ridefinire una funzione o una proprietà, è sufficiente dichiarare una funzione o una proprietà con lo stesso nome del componente erede. E 'così semplice. Il codice mostra prevalente in azione. La società che telefono prodotto Stan Cox-Fooster-risulta essere scamming tutti. Tramite contratti di scambio creativo con i vari "hot-talk" dei servizi e l'abbinamento con opzioni di servizio Fooster Modello ADHCC (AutoDial ColdFusion Hot Chicks) Telefono, Fooster presunti profitti inesistente che ha fatto il suo prezzo delle azioni volano alle stelle e attrarre gli investitori. Il denaro ha iniziato a versare, così la società ha dovuto trovare qualcosa a che fare con esso. La risposta: bonus per i dipendenti. Quindi, se sei un dipendente Fooster, il totale bonus annuale è il tuo gratifica natalizia, più 113 milioni di dollari. Sweet! Dichiarando la propria Bonus () la funzione, la componente Fooster sostituisce il Bonus () funzione ereditata dal componente dipendente, ma la XmasBonus ereditato () è ancora disponibile perché non è stato ignorato. Il codice mostra Fooster sistema di bonus in azione.
Vedete come componente di ereditarietà semplice ColdFusion è? Le regole sono semplici: le funzioni degli antenati e le proprietà sono disponibili nel erede a meno che non prevalgano. Questi esempi sono, per necessità, molto breve. Real-implementazioni mondo di componente prevalente sono il risultato di una pianificazione di componenti molto attento e design, perché devono prendere in considerazione l'intera gamma di comportamenti di ogni tipo di componente e dei suoi sottotipi esteso. Provate a farlo con una certa categoria di cose in natura, come aerei o le pistole, e vedere velocemente come questa non è una questione banale. un articolo presentato da Christian Roldan Disclaimer:Il nostro sito non è responsabile per il contenuto di questo articolo. Webarticles è una risorsa gratuita di informazioni. Importante: Questo articolo "Estensione ereditato le funzioni e le proprietà" è stato tradotto da un software automatico. Ci dispiace per eventuali errori di ortografia che possono essersi verificati. Grazie per la vostra comprensione.
|
|||||
| Online: 270 users browsing the articles directory |
|
|