Autor Tema: ¿deben llevar los métodos en java public? Concepto de variable local (CU00650B)  (Leído 3418 veces)

Francisco

  • Sin experiencia
  • *
  • Mensajes: 12
    • Ver Perfil
Hola, me alegra saludaros. Tengo algunas preguntas:

1 ¿Por qué los métodos no llevan public?
2 ¿el primer método tiene variablees locales? en el segundo método si veo tres variables locales

Código: [Seleccionar]
/* Ejemplo - aprenderaprogramar.com */

// Definición de una clase de ejemplo con uso del método length sobre objetos String aprenderaprogramar.com

// Combina las tres primeras letras de dos textos introducidos por el usuario en una sola cadena separada por un espacio

public class Combinador {

    private String texto1;

    private String texto2;

    public Combinador () { texto1 = ""; texto2 = ""; }

 

//Método que combina las tres primeras letras de cada cadena

    String Combinacion (String valor_texto1, String valor_texto2) {

        if (valor_texto1.length() >= 3 && valor_texto2.length() >= 3) { //Comprobación

            String combinacion = valor_texto1.substring (0, 3) + " " + valor_texto2.substring (0 ,3);

            return combinacion;

        } else { return "No aporta cadenas válidas"; }

    } //Cierre del método

 

//Método que combina las cadenas aunque contengan menos de 3 caracteres (nuevo método)

    String CombinadoSiempre (String valor_texto1, String valor_texto2) {

        int longitud_texto1 = 3;  //Si podemos extraeremos tres caracteres

        int longitud_texto2 = 3;

        String CombinadoSiempre = ""; //Cadena vacía, variable local

        if (valor_texto1.length() < 3) {          //Si hay menos de 3 caracteres extraemos los que haya

            longitud_texto1 = valor_texto1.length();

        }

        if (valor_texto2.length() < 3) { longitud_texto2 = valor_texto2.length(); }

CombinadoSiempre = valor_texto1.substring (0,longitud_texto1)+" "+ valor_texto2.substring (0, longitud_texto2);

return CombinadoSiempre;

    } //Cierre del método

 

} //Cierre de la clase
« Última modificación: 09 de Agosto 2015, 12:55 por Alex Rodríguez »

Lorenzo31

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 381
    • Ver Perfil
Re:USAR MÉTODOS PARA EVITAR ERRORES (CU00650B)
« Respuesta #1 en: 09 de Agosto 2015, 00:37 »
Buenas, los metodos publicos, son vistos desde cualquier clase que les llame, los metodos que no llevan ningun nombre, por defecto son vistos desde las clases del mismo paquete.

Sobe si el primer metodo tiene variables locales

String Combinacion (String valor_texto1, String valor_texto2) {

Esas dos variables que son pasadas al método, nacen y terminan con el método, son de uso local.

Creo que por ahí van tus preguntas, un saludo.

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:USAR MÉTODOS PARA EVITAR ERRORES (CU00650B)
« Respuesta #2 en: 09 de Agosto 2015, 12:54 »
Hola Francisco, en general los atributos los declaramos private y los métodos public (aunque no es obligatorio, es lo habitual). En este caso falta public por "un despiste", mejor ponérselo.

En el método String Combinacion (String valor_texto1, String valor_texto2) diríamos que no hay variables locales, sino parámetros (que recibe el método). Los parámetros funcionan como si fueran una variable local, como indica lorenzo31 nacen y terminan con el método.

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".