Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/08/2013, 15:55
osa123
 
Fecha de Ingreso: agosto-2013
Mensajes: 1
Antigüedad: 11 años, 3 meses
Puntos: 0
Exclamación Error en eclipse clases y herencia

Bueno, estoy iniciando a programar en java y estoy viendo las clases y herencias, tengo un problema en el codigo, Me da el error siguiente:

Exception in thread "main" java.lang.NullPointerException
at paquete2.Calcular.<init>(Calcular.java:8)
at paquete2.Principal.main(Principal.java:14)

Este es la primera clase:

Código:
package paquete2;

public class Calcular{
	
	private Circunferencia valor;
	public Calcular(int r)
	{
		valor.establecer(r);
	}
	
	public float perimetro()
	{
		float p;
		p=(float) (2*Math.PI*Math.pow(valor.obtener(), 2));
		return p;
	}
	
	public float area()
	{
		float a;
		a=(float) (Math.PI*Math.pow(valor.obtener(), 2));
		return a;
	}
	
	public String toString()
	{
		String cadena="";
		cadena=valor.obtener()+"\t"+this.perimetro()+"\t"+this.area()+"\n";
		return cadena;
	}
}
Esta es la segunda clase:
Código:
package paquete2;

public class Circunferencia {
	private int radio;
	public Circunferencia()
	{
		this.radio=0;
	}
	
	public void establecer(int r)

	{
		this.radio=r;
	}
	
	public int obtener()
	{
		return radio;
	}
}
y el main:

Código:
package paquete2;

import javax.swing.JOptionPane;

public class Principal {
	public static void main (String args[])
	{
		Circunferencia p=new Circunferencia();
		
		int r,op;
		String imp="";
		do{
			r=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el radio de la circunferencia: "));
			Calcular e = new Calcular(r);
			imp+=e.toString();
			System.out.print(imp);
			op=Integer.parseInt(JOptionPane.showInputDialog("Desea Continuar?\n1. Si\n2. No "));
		}while(op==1);
	}
}

Me aparece el error en las siguientes lineas:
Código:
			Calcular e = new Calcular(r);
//esta es de la clase del main
Código:
		valor.establecer(r);
//esta es de la clase calcular
Alguien me puede ayudar? Gracias por su atencion