Atributos e Mtodos
Programao Orientada a Objetos(Java)Profa. Flvia Cristina Bernardini
TpicosAtributos e Mtodos Estticos Encapsulamento e Acessibilidade
MotivaoExemplo: game com marcianos e outras criaturas
MotivaoExemplo: game com marcianos e outras criaturas
MotivaoExemplo: game com marcianos e outras criaturas
MotivaoExemplo: game com marcianos e outras criaturas
MotivaoExemplo: game com marcianos e outras criaturas
MotivaoExemplo: game com marcianos e outras criaturas Os marcianos s ficam corajosos quando esto em cinco ou mais... Assim, precisam saber quantas instncias da classe marciano esto instanciadas
Atributos estticos (static)Cada objeto possui uma cpia de todas as variveis da classe Em alguns casos, necessrio que apenas uma cpia de uma varivel em particular seja compartilhada por todos os objetos (instncias) da classe Nesses casos, usa-se uma varivel (atributo) static, que representa informaes de escopo de classe
Atributos estticos (static)Declara-se:private static int contMarcianos = 0;
contMarcianos uma varivel de classe, no uma varivel de instncia (objeto) Cada instncia de marciano pode ver contMarcianos como se ele fosse uma varivel de instncia da classe marciano, mas... Somente uma cpia de contMarcianos mantida!!
Componente esttica de classeAtributos estticos tm escopo de classe Componentes (atributos ou mtodos) public static de uma classe:acessados.
Ex:Math.PI; Math.abs(num);
Componente esttica de classeComponentes estticos privados (private static) somente podem ser acessados por mtodos da classe
Componente esttica de classeIMPORTANTE: Mtodos no-estticos podem acessar atributos e classes estticos, MAS... Mtodos estticos NO PODEM acessar atributos e mtodos no-estticos
Classe Objeto 2
Objeto 1
variveis e mtodos da classe Classe Objeto 2 variveis do objeto 2 Objeto 1 variveis do objeto 1
variveis e mtodos da classe Classe Objeto 2 variveis do objeto 2
X
Objeto 1 variveis do objeto 1
X
variveis e mtodos da classe Classe Objeto 2 variveis do objeto 2
X X
Objeto 1 variveis do objeto 1
X X
variveis e mtodos da classe Classe
X XObjeto 1 variveis do objeto 1
Objeto 2 variveis do objeto 2
X X
X X
variveis e mtodos da classe Classe
Ao chamar um mtodo esttico sem nenhum objeto instanciado, se esse mtodo fizer referncia a algum atributo (ou mtodo) de objeto (que s est inicializada quando h uma instncia da classe), h um ERRO! ERRO DE COMPILAO