Boa noite galerinha, como dá para perceber sou iniciante :oops: nessa linguagem e tenho algumas dúvidas, aí vai a primeira delas…risos…
Por que quando eu utilizo o “removeRange(int fromindex, int toindex) na classe Vector” na classe abaixo ele me retorna esse erro :?: :?: :?:
Classe:
import java.util.Vector;
public class Exec2{
public static void main(String[] args){
Vector meuvetor = new Vector(3,1);
Integer a = new Integer(5);
Integer b = new Integer(10);
Integer c = new Integer(20);
meuvetor.insertElementAt(a, 0);
meuvetor.insertElementAt(b, 1);
meuvetor.insertElementAt(c, 2);
System.out.println("Último elemento: "+meuvetor.lastElement());
meuvetor.removeRange(1, 3);
System.out.println("Último elemento: "+meuvetor.lastElement());
}
}
Erro:
000013: removeRange(int, int) has protected access in java.util.Vector
meuvetor.removeRange(1,3);
:roll: Desde já agradeço a atenção de vcs!!! :lol:
[color=orange]Keila Freitas[/color] 
Keila, já que vc é nova, não comece errado. Use o ArrayList, não o Vector.
O Vector é desaconselhado desde o Java 1.2.
Dá uma olhada nesse tópico:
http://www.guj.com.br/posts/list/74068.java#389435
Oi, tanto o Vector quanto o ArrayList implementam a mesma interface: List.
Ou seja, o ArrayList faz tudo que o Vector faz, mas melhor.
Com ele é possível colocar objetos de vários tipos sim, como faz o Vector.
Agora, seu problema é que você não pode acessar o método removeRange do Vector. Ele foi declarado como protected. Você só pode acessar métodos public.
Obrigada ViniGodoy!!!
Oi! Desculpa a minha ignorância, mas é para aprender que estou nesse fórum!!!
Uai, por que ele foi declarado como protected???
Então como eu posso usá-lo???
Ai meu Deus, quanto mais eu rezo mais assombração me aparece!!! risos…
:roll: :roll: :roll:
Crie o seu próprio com um for e um [b]remove/b;
Tudo bem Bruno. 8)
Achar um substituto para ele não é difícil, eu até gostei da sua dica do for, não tinha pensado nisso!
Mas eu quero saber por que eu tenho o removeRange disponível pelo java e não posso utilizá-lo!!! :!:
Ou melhor por que eu tenho esse método como protected?
Gte obrigada mais uma vez pela atenção!
[color=orange]Bjuxxxx[/color] :oops:
Quando se faz um método para uma API tão utilizada quanto a do Java, se pensa umas 100 vezes.
E quando é para publicá-la, pensa-se outras 1000. Isso é por que você nunca poderá voltar atrás.
Provavelmente por ela ser protected, as subclasses do Vector tem que fazer alguma coisa a mais para suportar o método sem que ele ofereça perigo para for utilizá-lo.
Hum…então tá bom!
Gte muito obrigada pela força viu!
Mas a dúvida continua, se alguém conseguir implementar o removeRange me avisem por favor…
:x
:?
:lol:
Bjuxxx 