Foros del Web » Programación para mayores de 30 ;) » Java »

No se hacer este metodo

Estas en el tema de No se hacer este metodo en el foro de Java en Foros del Web. Clase Asignatura Dos atributos privados: uno de tipo cadena, que es corresponda al nombre de una asignatura y otro de tipo entero que se corresponda ...
  #1 (permalink)  
Antiguo 13/04/2013, 02:46
 
Fecha de Ingreso: agosto-2004
Mensajes: 265
Antigüedad: 19 años, 8 meses
Puntos: 0
No se hacer este metodo

Clase Asignatura
Dos atributos privados: uno de tipo cadena, que es corresponda al nombre de una asignatura y otro de tipo entero que se corresponda a la calificación.

Un método constructor con dos parámetros, el primero para el nombre de la asignatura y el segunda para la calificación

Un método constructor con un parámetro solo que se corresponde al nombre de la asignatura

Un método para recuperar el nombre de la asignatura (devolverá el nombre de la asignatura).

Un método para recuperar la nota (devolverá la calificación).

Un método para asignar una calificación, que se envía como parámetro, a una asignatura.

import java.util.*;
public class Asignatura
{

//atributos
String nombre;
int calificacion;

//Constructor

public Asignatura(String nombre,int calificacion)
{
this.nombre=nombre;
this.calificacion=calificacion;
}

public Asignatura(String nombre)
{
this.nombre=nombre;

}

public String getnombre()
{
return nombre;
}

public int getcalificacion()
{
return calificacion;
}


//metodo

public String AsignarNota()
{

if (calificacion>=5)
return "Aprobado";
else
return "suspenso";

}
}

Clase Alumno


Tres atributos privados de tipo Asignatura llamados programación, basesDatos y entornos.

Un método constructor sin parámetros que se encargará de crear los correspondientes objetos Asignatura asignando como nombre de la asignatura el correspondiente nombre de la asignatura.

Un método llamado tratarprogramacion que será de tipo Asignatura y que devolverá la asignatura programación. COMO HAGO ESTE ALGUIEN ME PUEDE AYUDAR YO HE HECHO ESTO

public Asignatura tratarprogramacion()
{

programacion.nombre="programacion";

return programacion.nombre;

}

PERO DA ERROR EN TIPOS INCOMPATIBLES

MUCHAS GRACIAS
__________________
Recuerda que si señalas con el dedo, el resto de los dedos te señalan a ti!
  #2 (permalink)  
Antiguo 13/04/2013, 11:34
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: No se hacer este metodo

Hombre, en la clase asignatura, te pide que los atributos sean privados

//atributos
private String nombre;
private int calificacion;

Lo segundo te pide getters para los dos atributos y setter solo para la calificacion (no entiendo por que creas un metodo que devuelve aprobado o suspenso si no te lo pide).

En la clase alumno creas atributos que son de tipo Asignatura

//atributos
private Asignatura programacion;
private Asignatura basesDatos;
private Asignatura entornos,

y el metodo tratarProgramacion sería el getter del atributo programacion.
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #3 (permalink)  
Antiguo 15/04/2013, 04:20
 
Fecha de Ingreso: agosto-2004
Mensajes: 265
Antigüedad: 19 años, 8 meses
Puntos: 0
Respuesta: No se hacer este metodo

si en los atributos de una clase, no pongo nada no son private??

es decir

public clase prueba

string nombre;

no es lo mismo que

public clase prueba

private string nombre;
__________________
Recuerda que si señalas con el dedo, el resto de los dedos te señalan a ti!
  #4 (permalink)  
Antiguo 15/04/2013, 04:57
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: No se hacer este metodo

No, la visibilidad por defecto no es pública, sino a nivel de package.
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}

Etiquetas: clase, metodo, programa, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:50.