Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Chompy129 en 21 de Diciembre 2016, 16:47
-
static, final en Java (palabras clave). Variables de clase o campos estáticos y constantes. Ejemplos (CU00673B)
Aquí les dejo el ejercicio del curso de bases de la programación java:
ENUNCIADO
Define una clase Java denominada Circulo que tenga como atributo de clase (estático) y constante numeroPi, siendo esta constante de tipo double y valor 3.1416. Además la clase tendrá el atributo radio (tipo double) que representa el radio del círculo, y los métodos para obtener y establecer los atributos. También debe disponer de un método para calcular el área del círculo (método tipo funcion areaCirculo que devuelve el área) y la longitud del círculo (método tipo función que devuelve la longitud). Busca información sobre las fórmulas necesarias para crear estos métodos en internet si no las recuerdas. En una clase con el método main, declara el código que cree un objeto círculo, le pida al usuario el radio y le devuelva el área y la longitud del círculo.
¿Es posible crear un método en la clase Circulo para establecer el valor de numeroPi? ¿Por qué?
RESPUESTAS
Código Java (Circulo)
/**
* Define las cualidades de un circulo
*
* @author Chompy129
* @version 1.0
*/
public class Circulo{
private static final double numeroPI= 3.1416;
private double radio;
public Circulo(){
radio= .0;
}
//Métodos set
public void setRadio(double radio){
this.radio= radio;
}
//Métodos get
public double getRadio(){
return this.radio;
}
//Fin métodos set/get
public double calcularArea(){
return numeroPI * radio * radio;
}
public double calcularLongitud(){
return 2 * numeroPI * radio;
}
}
Código Java (TestCirculo)
import javax.swing.JOptionPane;
/**
* Testea el funcionamiento de la clase Circulo.
* @author Chompy129
* @version 1.0
*/
public class TestCirculo{
public static void main(String[] args){
Circulo circunferencia= new Circulo();
circunferencia.setRadio(Double.parseDouble(JOptionPane.showInputDialog("Introdusca el radio del circulo:")));
System.out.println("El area del circulo es " + circunferencia.calcularArea());
System.out.println("La longitud del circulo es " + circunferencia.calcularLongitud());
}
}
En cuanto a las preguntas la respuesta es:
No. Porque esta establecido como una variable constante, no puede ser alterada.
Link de la clase: https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=639:static-final-en-java-palabras-clave-variables-de-clase-o-campos-estaticos-y-constantes-ejemplos-cu00673b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188 (https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=639:static-final-en-java-palabras-clave-variables-de-clase-o-campos-estaticos-y-constantes-ejemplos-cu00673b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188)
-
Hola Chompy129.
Parece que está todo bien. ¡Saludos!