função obter demonstrativo
Declara os acessadores para uma nova propriedade em uma classe ou uma interface.Geralmente, função get aparecerá em conjunto com um conjunto de funções para permitir o acesso de leitura/gravar a uma propriedade.
// Syntax for the get accessor for a property in a class.
[modifiers] function get propertyname() [: type] {
[body]
}
// Syntax for the get accessor for a property in an interface.
[modifiers] function get propertyname() [: 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.type
Opcional.O tipo de retorno do obter acessador.Isso deve corresponder ao tipo de parâmetro do conjunto acessador, se definida.body
Opcional.Uma ou mais declarações que definem como um obter 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 obter acessador, que deve especificar um tipo de retorno, não tem argumentos.A obter acessador pode estar combinado com um conjunto acessador, que tem um argumento e não tem 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 leitura a partir do e gravada. 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 age.
chris.Age = 27;
// Read chris 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:
Chrisis 27 years old.
Favorite color is red.