bsr Posted May 6, 2009 at 04:33 PM Report #261895 Posted May 6, 2009 at 04:33 PM Eu tenho duas classes X e Y, tenho depois uma classe abstrata Z onde estão os metodos das classes X e Y. A ideia é criar um hashSet ou arrayList (não sei ainda qual vou usar) para guardar vaios objectos do tipo Z. A duvida é a seguinte, como é que aqui eu digo que ac é "do tipo da classe" X. /** Metodo que insere nova X */ public void insereX(Z ac) { if((this.existeZ(ac.getNome())) == true) {} // Se ja existir não faz nada */ else lista.add(ac); } Nota: lista é um hashSet ou Arraylist de Z Sei que devo ter cometido algumas calinadas mas sou principiante. Obrigado.
cheires Posted May 7, 2009 at 04:22 PM Report #262165 Posted May 7, 2009 at 04:22 PM Sabes o que se entende por uma classe abstracta, não sabes? Uma classe abstracta não pode ser istânciada. Por isso não podes criar objectos do tipo Z.
Rui Carlos Posted May 7, 2009 at 05:21 PM Report #262183 Posted May 7, 2009 at 05:21 PM Não percebi o que querias fazer... De qualquer forma, para dizeres que ac é do tipo X, basta fazeres: X ac1=(X)ac; Rui Carlos Gonçalves
M6 Posted May 7, 2009 at 05:26 PM Report #262186 Posted May 7, 2009 at 05:26 PM Não percebi a tua explicação mas creio que compreendi o que queres fazer. Se estás a usar Java 5 ou 6, basta criares declarares um hashset ou arraylist do tipo que pretendes: ArrayList<Z> Assim esse arraylist trabalha sobre objectos do tipo Z, e descendentes, sejam eles X ou Y. Não necessitas de fazer uma classe para inserir os objectos. Se necessitares de maior controlo, podes então criar uma classe que estende de ArrayList<Z> e fazer overwrite aos métodos que necessitas. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now