Estendendo herdado funções e propriedadesNós dissemos muito sobre a teoria da herança componente ColdFusion e, francamente, muito do que é sério exagerada. Partes Herança seu nome com o mundo orientado a objeto, mas isso é tudo que partes. Herança CFC pode ser facilmente resumida com as seguintes três afirmações simples:
Um componente pode herdar de estender ou de outra, após o qual o componente herdando pode fazer uso de propriedades de seus antepassados e métodos. Se o componente herdando declara seus próprios métodos nome diferente daqueles em seu ancestral, o ancestral de ambos os métodos e os métodos do componente herdando pode ser chamado através do componente herdando. O mesmo vale para a declaração de propriedades por meio de nomes que não combinam com o seu antepassado. Se o componente herdando declara seus próprios métodos nomeados os mesmos em seu antepassado, os métodos do componente herdando de substituir os métodos do antepassado com o mesmo nome, como se os métodos do antepassado estão escondidos. O mesmo vale para a declaração de propriedades por meio de nomes que correspondem aos seus ancestrais. Basta manter estes três princípios simples na mente como você continuar com as seguintes peças e não acho que essa herança é mais complicado do que isso. Herança tem algumas aplicações em tempo real de desenvolvimento do ColdFusion-mundo, mas é provável que você achar que eles são raros. No entanto, você deve compreender a herança de modo que você pode detectar locais em seu aplicativo, onde ele pode ser justificado. Você pode usar o pacote que você criar os códigos para aprender sobre estender componentes. Embora nós não discutimos isso antes, nós criamos uma propriedade no componente Emp empProperty nomeado, conforme segue: Criando uma variável no escopo do presente componente Emp propriedade faz com que uma variável desse componente. Lembre-se que todo o código de área de um componente de inicialização é executada uma vez que uma instância do componente é criado pela primeira vez, o que significa que a propriedade é automaticamente empProperty criado e inicializado para o valor original Emp de cada instância do componente Emp é criado. Você pode alterar o valor de This.empProperty após ser inicializado, e cada instância do componente Emp pode conter seu próprio valor de empProperty. Se você herdar ou estender um componente, as funções e propriedades do ancestral são, em essência, copiado para o herdeiro, onde eles podem ser chamados e usados apenas como se fossem uma parte do herdeiro. Então, se você criar um componente chamado Manager que se estende o componente Emp, como mostrado no código, o componente Gestor também contém uma propriedade nomeado empProperty. Manager estende Emp, então gerente herda propriedades e funções Emp. Observe também que o código anterior declara uma propriedade diretamente no Gestor, nomeado managersOwnProperty. Emp gerente herda propriedades, mas o processo é uma rua de mão única, assim managersOwnProperty está disponível apenas na componente Gestor e, não no componente Emp. Os mesmos princípios de herança que trabalham para propriedades do componente também trabalhar para as funções de componente. Emp A componente contém um bônus () que calcula os bônus dos empregados nonmanagerial, mas os gerentes fazem um bônus adicional de 15 por cento. Para calcular o bônus do gerente, você estender a funcionalidade do Gerenciador de declarando uma função chamada ManagerBonus (), como mostrado nos códigos. Para recuperar o bônus normal de um empregado, ManagerBonus () deve chamar o Bonus () função que está declarada no componente Emp. Mas Manager estende Emp, assim Bonus () está disponível como uma das funções próprias Manager, todos ManagerBonus () deve fazer é retornar Bonus () multiplicado por 1,15, como segue: O código mostra herança em ação. Observe como as propriedades e funções da Emp e Gerente são directamente acessíveis a partir Manager.
Tudo o que você fez até agora é conhecida como a extensão porque você deixa todas as funcionalidades do componente ancestral modificado e estendê-lo somente pela adição de novas funções e propriedades. No mundo orientado a objeto, essa técnica é conhecida como especialização: Um gerente é um trabalhador especializado que faz as mesmas coisas básicas e mais algumas. Para usar o objeto mais um par de termos orientados, um gerente é um subtipo de um empregado, eo funcionário é o supertipo do gerente. Não fique preso a estas condições, temos mencioná-las aqui apenas para que você possa acompanhar nas discussões inevitável que você ouve na comparação componentes a objetos. Substituindo substitui herdado propriedades e funções com algo completamente diferente do que foi herdado. Para substituir uma função ou propriedade, basta declarar uma função ou propriedade do mesmo nome, na componente de herdeiro. É tão simples como isso. O código mostra imperiosa na ação. A empresa que telefone fabricado Stan Cox-Fooster-despeja ser golpes todos. Através de contratos comerciais com vários criativos "hot-talk" agregação de serviços e opções de serviços com o Modelo Fooster ADHCC (discagem automática ColdFusion Hot Chicks) Telefone, Fooster alegados lucros inexistentes que fez o preço das ações sobem muito alto e atrair investidores. O dinheiro começou a derramar dentro, assim que a empresa teve de encontrar algo para fazer com ele. A resposta: bônus aos funcionários. Portanto, se você é um funcionário Fooster, o seu bónus anual total de seu bônus de Natal, mais 113 milhões de dólares. Sweet! Ao declarar seu bônus própria função (), o componente Fooster substitui o bônus de função () herdado do componente empregado, mas o XmasBonus herdado function () ainda está disponível porque não foi substituído. O sistema de código mostra Fooster bônus em ação.
Você vê como simples herança componente ColdFusion é? As regras são simples: Ancestor funções e propriedades estão disponíveis no herdeiro menos substituído. Estes exemplos são, por necessidade, muito breve. Real-implementações mundo da componente primordial são o resultado da componente de planeamento e design muito cuidado, porque eles devem ter em consideração o conjunto de comportamentos de cada tipo de componente e seus subtipos prorrogado. Tente fazer isso com alguma categoria de coisas na natureza, como aviões ou armas, e você ver rapidamente como esta não é uma questão trivial. um artigo submetido por Christian Roldan Isenção de responsabilidade:O nosso site não se responsabiliza pelo conteúdo deste artigo. Webarticles é uma fonte de informação livre. Importante: Este artigo "Estendendo herdado funções e propriedades" foi traduzida por um software automático. Nós sentimos muito por quaisquer erros de ortografia que pode ter ocorrido. Obrigado pela sua compreensão.
|
|||||
| Online: 256 users browsing the articles directory |
|
|