Ayuda con return y un if

Artool
15 de Noviembre del 2008
hola,tengo un problema un poco extraño,lo mas seguro es q con el uso de herencia u otra cosa se solucione,pero aun asi deseo saber por que me marca un error llamado"missing return statement" el siguiente codigo.



double area()
{

if(name=="Cuadrado")
return lado*lado;
if(name=="Circulo") //sin esta linea jala bien
return lado*lado*3.1416;
}


Pero si le quito la linea if(name=="Circulo") funciona bien.La creacion de los objetos , constructores y llamada a metodos son los siguientes:


//Constructor
Figura(String name,int lado)
{
this.name=name;
this.lado=lado;
}


Figura cua=new Figura("Cuadrado",8);
Figura cir=new Figura("Circulo",7);

System.out.println(cua.area());
System.out.println(cir.area());


Bueno,ojala alguien me eche la mano,gracias de antemano.

pedrohv012005
15 de Noviembre del 2008
Aquí no hay problemas de herencia.
¿Qué pasa si no se cumple ninguna de las dos condiciones?
Tu método no sabe qué va a devolver.
Ponle return 0; o algo para que te quites el error