Etendre les fonctions et les propriétés héritéesNous avons dit au sujet de beaucoup la théorie de ColdFusion composante d'héritage, et franchement, une grande partie de celui-ci est gravement exagérées. Parts d'héritage de son nom avec l'environnement orienté objet, mais c'est à peu près tout ce qu'elle partage. CFC héritage peut être facilement résumer en trois énoncés simples:
Chaque composant peut hériter d'un autre ou d'étendre, après quoi le composant hérite peut faire usage de son ancêtre propriétés et méthodes. Si le composant héritant déclare ses propres méthodes nommées différemment de ceux de son ancêtre, à la fois de l'ancêtre des méthodes et des méthodes du composant héritant peut être appelé par le biais de la composante hériter. La même chose vaut pour la déclaration des propriétés en utilisant des noms qui ne correspondent pas à leurs ancêtres. Si le composant héritant déclare ses propres méthodes portant le même nom que celles de son ancêtre, les méthodes du composant héritant de redéfinir les méthodes de l'ancêtre du même nom, comme si les méthodes de l'ancêtre sont cachés. La même chose vaut pour la déclaration des propriétés en utilisant des noms qui correspondent à leurs ancêtres. Continuez simplement ces trois principes simples d'esprit que vous avancez dans les parties suivantes et ne pense pas que l'héritage est plus compliqué que cela. De succession ont un peu de candidatures dans un véritable développement de ColdFusion monde, mais vous êtes susceptible de constater qu'ils sont rares. Néanmoins, vous devez comprendre l'héritage de sorte que vous pouvez repérer des lieux dans votre application dans lesquels elle mai être justifiée. Vous pouvez utiliser le package que vous créez dans les codes à apprendre sur l'extension des composants. Même si nous n'avons pas discuté précédemment, nous avons créé une propriété dans le composant nommé Emp empProperty, comme suit: Création d'une variable dans le champ d'application de cette composante de l'Emp rend cette variable d'une propriété de ce composant. N'oubliez pas que tout le code dans la zone d'initialisation d'un composant est exécutée une fois comme une instance de la composante est d'abord créé, ce qui signifie que la propriété est automatiquement empProperty créée et initialisée à la valeur d'origine Emp étant donné que chaque instance du composant Emp est créé. Vous pouvez changer la valeur de This.empProperty fois qu'il aura été initialisé, et chaque instance du composant Emp mai contenir sa propre valeur de empProperty. Si vous héritez ou étendre un composant, les fonctions et les propriétés de l'ancêtre sont, en substance, copié dans l'héritier, où ils peuvent être appelés et utilisées comme si elles faisaient partie de l'héritier. Alors, si vous créez un composant nommé Manager qui étend la composante EMP, comme indiqué dans le code, le composant Gestionnaire contient également une propriété nommé empProperty. Manager étend EMP, si Emp Manager hérite des propriétés et fonctions. Notez également que le code précédent déclare une propriété directement dans le Gestionnaire, nommé managersOwnProperty. Manager hérite des propriétés PEM, mais le processus est une rue à sens unique, de sorte managersOwnProperty n'est disponible que dans la composante gestionnaire et non pas dans la composante Emp. Les mêmes principes d'héritage qui travaillent pour des propriétés de composant également travailler pour les fonctions des composants. Le PGE composant contient un bonus () fonction qui calcule les primes des employés nonmanagerial, mais les gestionnaires à prendre un bonus supplémentaire de 15 pour cent. Pour calculer les primes de gestionnaire, vous étendre les fonctionnalités du gestionnaire en déclarant une fonction nommée ManagerBonus (), comme indiqué dans les codes. Pour récupérer la prime normale pour un employé, ManagerBonus () doit appeler le Bonus () qui est déclaré dans la composante Emp. Mais le directeur des étend EMP, ainsi Bonus () est disponible comme une des fonctions propres du directeur, tous ManagerBonus () doit faire est de retourner bonus () multiplié par 1,15, comme suit: Le code montre l'héritage en pleine action. Comment les propriétés et les fonctions des deux emp et Manager sont directement accessibles à partir du Gestionnaire d'impression.
Tout ce que vous avez fait jusqu'à présent est connu que l'extension, car vous laissez toutes les fonctionnalités du composant ancêtre non modifié et l'étendre uniquement par ajout de nouvelles fonctionnalités et propriétés. Dans l'environnement orienté objet, cette technique est connue sous le nom de spécialisation: Un gestionnaire de est un employé spécialisé qui fait les mêmes choses de base plus quelques autres. Pour utiliser l'objet d'un couple plus axée sur les termes, un opérateur est un sous-type d'un employé et l'employé est le supertype du gestionnaire. Ne vous laissez pas distraire par ces termes, nous les mentionnons ici que pour que vous puissiez suivre sur dans les discussions inévitables que vous entendez en comparant les composants aux objets. Redéfinition remplace hérité des propriétés et fonctions avec quelque chose de complètement différent de ce qui a été hérité. Pour remplacer une fonction ou une propriété, il suffit de déclarer une fonction ou une propriété du même nom dans la composante héritier. C'est aussi simple que cela. Le code montre impérieuse d'action. La société qui construit téléphone Stan Cox-Fooster-s'avère être escroquer tout le monde. Grâce à des contrats commerciaux créatifs avec diverses "hot-talk" des services et des options de service de groupage avec ADHCC Modèle Fooster's (AutoDial ColdFusion Hot Chicks) Téléphone, Fooster présumés bénéfices inexistant qui a fait son cours de Bourse s'envoler ciel élevé et attirer des investisseurs. Les fonds ont commencé à affluer dans, si la société a dû trouver quelque chose à voir avec cela. La réponse: Les primes des employés. Donc, si vous êtes un employé Fooster, votre bonus annuel total de votre prime de Noël, plus 113 millions de dollars. Sweet! En déclarant son bonus propres () la fonction, la composante Fooster remplace le bonus () la fonction héritée de la composante «employé», mais le XmasBonus hérité () est toujours disponible car il n'a pas été redéfinie. Le code montre système de bonus Fooster en action.
Vous voyez comment l'héritage simple composant ColdFusion est-ce? Les règles sont simples: les fonctions des ancêtres et les propriétés sont disponibles dans l'héritière sauf si surchargée. Ces exemples sont, par nécessité, très bref. Real-implémentations monde de la composante dominante sont le résultat d'une planification très minutieuse des composants et la conception, car ils doivent prendre en considération l'ensemble des comportements de chaque type de composant et ses sous-types prolongée. Essayez de le faire avec une certaine catégorie de choses dans la nature, comme des avions ou des canons, et vous voir rapidement comment ce n'est pas une mince affaire. un article présenté par Christian Roldan Disclaimer:Notre site n'est pas responsable du contenu de cet article. Webarticles est une ressource d'information gratuite. Important: Cet article «Etendre hérité des fonctions et des biens» a été traduit par un logiciel automatique. Nous nous sentons désolés pour les fautes d'orthographe que mai ont eu lieu. Nous vous remercions de votre compréhension.
|
|||||
| Online: 249 users browsing the articles directory |
|
|