Compartilhar via


função define demonstrativo

Declara os acessadores para uma nova propriedade em uma classe ou uma interface.Geralmente, conjunto de funções aparecerá em conjunto com um função get para permitir o acesso de leitura/gravar a uma propriedade.

// Syntax for the set accessor of a property in a class.
 [modifiers] function set propertyname(parameter [: type]) {
   [body]
}

// Syntax for the set accessor of a property in an interface.
[modifiers] function set propertyname(parameter [: type])

Argumentos

  • modifiers
    Opcional.Modificador controlar a visibilidade e o comportamento da propriedade.

  • propertyname
    Obrigatório.Nome da propriedade que está sendo criada.Deve ser exclusivo dentro da classe, exceto o mesmo PropertyName pode ser usado com dois obter and conjunto acessadores para identificar uma propriedade que possa ler e gravados.

  • parameter
    Obrigatório.Parâmetro formal aceito pelo conjunto acessador.

  • type
    Opcional.Tipo de parâmetro do conjunto acessador.Isso deve corresponder ao tipo de retorno do obter acessador, se definida.

  • body
    Opcional.Uma ou mais declarações que definem como um conjunto acessador opera.

Comentários

Propriedades de um objeto são acessadas da mesma forma sistema autônomo um campo for acessado, exceto pelo fato de que sistema autônomo propriedades permitem para ter mais controle sobre sistema autônomo valores que são armazenados no e retornados do objeto.Propriedades podem ser somente leitura, somente gravar ou leitura-gravar, dependendo a combinação de obter and conjunto acessadores de propriedade definidos dentro da classe.Propriedades são freqüentemente usadas para ajudar a garantir que somente valores apropriados são armazenados em um private ou protected campo. Você não pode atribuir um valor a uma propriedade somente leitura ou ler um valor de uma propriedade somente gravar.

A conjunto acessador deve ter exatamente um argumento e ele não é possível especificar um tipo de retorno.The conjunto acessador pode estar combinado com um obter acessador, que não possui argumentos e deve especificar um tipo de retorno.Se ambos os acessadores são usados para uma propriedade, o tipo de retorno do obter acessador deve corresponder ao tipo de argumento do conjunto acessador.

Uma propriedade pode ter qualquer um obter acessador ou conjunto acessador ou ambos.Somente o obter acessador (ou conjunto acessador se não houver nenhum obter acessador) de uma propriedade pode ter atributos personalizados que aplicar à propriedade sistema autônomo um todo.O obter and conjunto acessadores podem ter modificadores e atributos personalizados que se aplicam ao acessador individual.Acessadores de propriedade não podem ser sobrecarregados, mas podem ser oculto ou substituídos.

Propriedades podem ser especificadas na definição de um interface, mas nenhuma implementação pode ser fornecida na interface.

Exemplo

O exemplo a seguir mostra várias declarações de propriedade.An Age propriedade é definida sistema autônomo ler e gravar em. Um somente leituraFavoriteColor propriedade também é definida.

class CPerson {
   // These variables are not accessible from outside the class.
   private var privateAge : int;
   private var privateFavoriteColor : String;

   // Set the initial favorite color with the constructor.
   function CPerson(inputFavoriteColor : String) {
      privateAge = 0;
      privateFavoriteColor = inputFavoriteColor;
   }

   // Define an accessor to get the age.
   function get Age() : int {
      return privateAge;
   }
   // Define an accessor to set the age, since ages change.
   function set Age(inputAge : int) {
      privateAge = inputAge;
   }

   // Define an accessor to get the favorite color.
   function get FavoriteColor() : String {
      return privateFavoriteColor;
   }
   // No accessor to set the favorite color, making it read only.
   // This assumes that favorite colors never change.
}

var chris : CPerson = new CPerson("red");

// Set Chris's age.
chris.Age = 27;
// Read Chris's age.
print("Chris is " + chris.Age + " years old.");

// FavoriteColor can be read from, but not written to.
print("Favorite color is " + chris.FavoriteColor + ".");

Quando este programa é executado, exibirá o seguinte:

Chris is 27 years old.
Favorite color is red.

Requisitos

Versão .NET

Consulte também

Conceitos

Anotação de tipo

Referência

demonstrativo de classe

demonstrativo de interface

demonstrativo de função

função obter demonstrativo

Outros recursos

Modificadores