Método protected

Pessoal, isso aqui já aconteceu com voces?

package dao.sistema public class UnitDAO { protected Vector findAll() throws Exception { //retornos } }
em outro pacote, tenho um unitcontroller, que extend meu unitdao e implementa o seguinte método:

package controller.sistema public class UnitController extends UnitDAO{ public Vector findAll() throws Exception { return super.findAll(); } }

No entanto, na minha chamada, do método findall, do meu controller, o compilador reclama que eu tenho que alterar no dao,
de protected pra public.
Como poderia fazer?eu não quero que meu método no dao seja public

Se não me engano metódos protected só são acessiveis dentro do proprio pacote. E por isso o compilador não deixa você acessar esse metódo em uma classe de outro pacote.

na verdade tem um erro, eu não havia implementado o findAll() como public no controller. por isso ele pedia p/ alterar a visibilidade em DAO

Isso seria aqueles métodos com modificador padrão, ou seja, sem um modificador de acesso:

[code]
//Pode ser acessado apenas do mesmo pacote
void meuMetodo() {
}

//Pode ser acessado apenas pela própria classe e suas subclasses
protected void meuOutroMetodo() {
}[/code]

Isso seria aqueles métodos com modificador padrão, ou seja, sem um modificador de acesso:

[code]
//Pode ser acessado apenas do mesmo pacote
void meuMetodo() {
}

//Pode ser acessado apenas pela própria classe e suas subclasses
protected void meuOutroMetodo() {
}[/code][/quote]

Na verdade, metodos e atributos protected são acessiveis TAMBÉM por classes dentro do pacote.
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html

Isso seria aqueles métodos com modificador padrão, ou seja, sem um modificador de acesso:

[code]
//Pode ser acessado apenas do mesmo pacote
void meuMetodo() {
}

//Pode ser acessado apenas pela própria classe e suas subclasses
protected void meuOutroMetodo() {
}[/code][/quote]

Na verdade, metodos e atributos protected são acessiveis TAMBÉM por classes dentro do pacote.
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html[/quote]
Dessa eu não sabia, pensei que fossem apenas as sub-classes :slight_smile:
Valeu!

Valeu Sem_Nome, realmente tinha entendido errado!