Duvida em niveis de acesso

6 respostas
LPJava

ae galera em anexo temos uma interface e duas classes pq qdo tiro da class conta o public ele nao compila sendo que ta tudo no mesmo diretorio? no era para compilar mesmo como padrao?

6 Respostas

Marcel_Horner

Baixei os arquivos, compilei e rodei normalmente. Vc nao esta conseguindo compilar da forma como esta no seu post?

C:\Permissao>javac *.java

C:\Permissao>java Banco
Saldo 98.0

C:\Permissao>
LPJava

ae Marcel como ta ai no post ta compilando normal… porem qdo eu tiro public da class conta ele nao compila sendo que está todos no meu diretorio faça esse teste ai…

Marcel_Horner

Nao entendi exatamente qual public vc esta retirando. Sao as declaracoes de public dos metodos da interface Conta?

Porque as classes jah estao sem o public:

class ContaAsus implements Conta {
...
}

interface Conta {
...
}

class Banco {
...
}
LPJava

marcel falo dos metodo da interface conta

public double getSaldo();
	public void deposita(double valor);
	public void retira(double valor);
	public void atualiza(double taxaSelic);

se eu tirar o public dar pau pq? sendo q ta tudo na mesmo diretorio… nao posso deixar como padrao?.. nao entendi…

silva.fernandes

Camilo,

Sobre seu questionamento em retirar o public dos métodos da Interface.

Baixei seus arquivos … testei como está … retirei os public e funcionou normalmente.

Como diz o livro Sun Java Certification - Kathy Sierra, SCJP1.5, SCJP 310-055 ( Ingles).

Todos os métodos da interface são public e abstract implicitamente, não precisando desta palavras reservadas na declaração de seus métodos.

Caso vc tenha o livro esta informação está na pag 20.

Falowww

T+

LPJava

opa… estranho entao realmente ele diz isso! :?

Criado 2 de novembro de 2006
Ultima resposta 3 de nov. de 2006
Respostas 6
Participantes 3