Olá, pessoal, aqui estou eu novamente pedindo ajuda.
Bem, em outro tópico consegui, com a ajuda do pessoal aqui, a implementar uma classe chamada Estatistica, que deve ser usada para somente a entrada dos dados e também a quantidade de dados a serem tratados. Esses dados devem ser armazenados num vetor chamado valor[].
Agora devo implementar uma classe chamada EstatisticaIndutiva que estende a classe Estatistica e faça os cálculos necessários e mostre os dados.
O problema é que as duas classes devem possuir os métodos main(). Na classe Estatistica entro com os valores e na classe EstatisticaIndutiva esses valores devem ser calculados. Minha dúvida é como passar esses dados armazenados no vetor valor[] da classe Estatistica para a classe EstatisticaIndutiva. Se as duas classes têm o método main(), quando eu acabo de digitar os dados na classe Estatistica a aplicação não é encerrada ?
Como eu faço a classe EstatisticaIndutiva pegar os valores do vetor valor[] ?
Se somente a classe EstatisticaIndutiva tivesse a classe main() eu saberia resolver, mas estou com essa dúvida aí.
Podem me ajudar, por favor ?
Os códigos das duas classes estão logo abaixo:
Classe Estatisitca
package mediaDesvio;
import javax.swing.JOptionPane;
public class Estatistica
{
// Declara as variáveis utilizadas na superclasse Estatistica:
public static int n;
public static double valor[];
public static double Prob[];
// Método construtor implícito para a classe Estatistica
public Estatistica()
{
}
/*
Define o método capturaNumeroDados.
Captura a quantidade de elementos a serem tratados
Define os vetores valor e Prob com a quantidade de
elementos definida pelo usuário.
*/
public static void capturaNumeroDados()
{
String k = JOptionPane.showInputDialog(null,"Informe a quantidade de dados");
n = Integer.parseInt(k);
}
/*
Define o método capturaDados.
Define os vetores valor e Prob com seus respectivos
número de elementos.
Captura os dados e os pesos de cada valor e os aloca
em seus respectivos vetores.
*/
public static void capturaDados()
{
valor = new double[n];
Prob = new double[n];
for(int i=0;i<n;i++)
{
String dado = JOptionPane.showInputDialog(null, "Qual o valor do dado " + (i+1));
double val = Double.parseDouble(dado);
valor[i] = val;
String peso = JOptionPane.showInputDialog(null, "Informe o peso do dado anterior");
double pes = Double.parseDouble(peso);
Prob[i] = pes;
}
}
/*
Método mostraDados. Mostra os dados digitados no
método capturaDados.
*/
public static void mostraDados()
{
for (int j = 0; j < n; j++)
{
System.out.println(valor[j]);
System.out.println(Prob[j]);
}
}
public static void main(String args[])
{
//Invoca o método capturaNumeroDados
capturaNumeroDados();
//Invoca o método capturaDados
capturaDados();
//Invoca o método mostraDados
mostraDados();
}
}
Classe EstatisticaIndutiva
package mediaDesvio;
public class EstatisticaIndutiva extends Estatistica
{
private String saida;
private double media;
private double desvio;
// Método construtor implícito para a classe EstatisticaIndutivo
public EstatisticaIndutiva()
{
}
/*
Método construtor alternativo para a classe EstatisticaIndutiva
Usa atributo media
*/
public EstatisticaIndutiva(double average)
{
media = average;
}
private double calculaMedia()
{
return media;
}
private double calculaDesvioPadrao()
{
return desvio;
}
private void mostraResultado(double media, double desvio)
{
}
public static void main(String[] args)
{
}
}