Seja bem vindo ao Fórum do JavaFree.org
Aqui você irá encontrar respostas para TUDO o que você precisa sobre java.
Deseja participar? Crie sua conta ou efetue seu login
ja existe uma discussao deste erro.. porem nao consegui resolver meu problema..
Tenho um trabalho referente Algoritmos Gulosos .. e para resolver o exercicio solicitado.. estou enfrentando o seguinte erro:
Erro non-static variable this cannot be referenced from a static context
Segue meu codigo:
public class Gulosos_t {
ArrayList bol = new ArrayList();
/**
*
* @param args the command line arguments
*/
public static void main(String[] args) {
Integer quant = Integer.parseInt(JOptionPane.showInputDialog("informe a quatidade de bolas: "));
int bolas[] = new int[quant];
for(int x=0;x{
bolas[x]=Integer.parseInt(JOptionPane.showInputDialog("Informe o peso da bola "+(x+1)+": "));
Voce precisa declarar a variável que está dando erro como static.
No caso é array list bol, declare-a como:
ou simplemente declare dentro do metodo main. Este erro é por ser tratar do metodo main ser static, e tentar acessar um metodo e/ou uma variavel não static. _________________O melhor lugar para se esconder um cadáver, é na segunda página do Google.
Voce precisa declarar a variável que está dando erro como static.
Quando o compilador avisa que "Variáveis não estáticas não podem ser acessadas de um contexto estático", não quer dizer que você tem que declarar a variável como estática.
Analise o seu código, para decidir se voce precisa de:
- uma variável estática;
- uma variável local;
- um objeto para acessar tal variável. _________________Ricardo Artur Staroski, OCP-JP
Blumenau - SC
wesleycamPosts:1
Prezados,
bol = new ArrayList();
{
ja existe uma discussao deste erro.. porem nao consegui resolver meu problema..
Tenho um trabalho referente Algoritmos Gulosos .. e para resolver o exercicio solicitado.. estou enfrentando o seguinte erro:
Erro non-static variable this cannot be referenced from a static context
Segue meu codigo:
public class Gulosos_t {
ArrayList
/**
*
* @param args the command line arguments
*/
public static void main(String[] args) {
Integer quant = Integer.parseInt(JOptionPane.showInputDialog("informe a quatidade de bolas: "));
int bolas[] = new int[quant];
for(int x=0;x
bolas[x]=Integer.parseInt(JOptionPane.showInputDialog("Informe o peso da bola "+(x+1)+": "));
}
Arrays.sort(bolas);
for(int y=0;y
{
Bolas b = new Bolas();
b.setBol(bolas[y]);
bol.add(b); // onde o erro acontece!!!
}
}
}
-----------------------------------------------------------
Classe Bolas
public class Bolas {
int bol;
public int getBol() {
return bol;
}
public void setBol(int bol) {
this.bol = bol;
}
}
vlws pessoal
acordacoPosts:2
Voce precisa declarar a variável que está dando erro como static.
No caso é array list bol, declare-a como:
D3z40Posts:480