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

ayuda para una clase abstracta

Estas en el tema de ayuda para una clase abstracta en el foro de Java en Foros del Web. ILUMINENME CON SUS CONOCIMIENTOS SABIOS DE PROGRAMACIÓN. ESTE ES EL ERROR QUE ME SALE C:\Users\PHILIP\Documents\Downloads\Java\Base.java :65: Herramientas.Base is abstract; cannot be instantiated Arreglo[c]= new Base(nombre,matricula,carrera,egreso,calif,credito ...
  #1 (permalink)  
Antiguo 11/11/2009, 18:19
Avatar de Philip7  
Fecha de Ingreso: septiembre-2008
Mensajes: 56
Antigüedad: 15 años, 8 meses
Puntos: 1
ayuda para una clase abstracta

ILUMINENME CON SUS CONOCIMIENTOS SABIOS DE PROGRAMACIÓN.

ESTE ES EL ERROR QUE ME SALE

C:\Users\PHILIP\Documents\Downloads\Java\Base.java :65: Herramientas.Base is abstract; cannot be instantiated
Arreglo[c]= new Base(nombre,matricula,carrera,egreso,calif,credito s);
----------^
1 error

Process completed.

Código PHP:
package Herramientas;
import Herramientas.Teclado;
public abstract class 
Base implements Inicio
{
    private 
String matriculanombrecarreraegreso;
    private 
float calif[];
    private 
int creditos[];
    
Teclado v = new Teclado();
    public 
Base(String nomString matriString carreraAlumString fechaegrefloat calificaciones[], int cred[])
    {
        
nombre =  nom;
        
matricula matri;
        
carrera carreraAlum;
        
egreso fechaegre;
        for(
int c=0c<calif.lengthc++)
        {
            
calif[c]=calificaciones[c];
        }
            for(
int c=0c<creditos.lengthc++)
        {
            
creditos[c]=cred[c];
        }
    }
    
    public 
Base[] lectura (Base Arreglo[])//lectura de los atributos de la clase.
    
{
        
int pp
        for(
int c=0c<Arreglo.lengthc++)
        {
            
System.out.println("Escribe el nombre del alumno "+(c+1));
            
            
nombre v.leeString();
            
            
System.out.println("Escribe la matricula del alumno "+nombre);
            
matricula v.leeString();
            
            
System.out.println("Escribe la carrera de "+carrera);
            
carrera v.leeString();
            
            
System.out.println("Escribe la fecha de egreso de "+nombre);
            
egreso v.leeString();
            
            
System.out.println("¿Cuantas calificaciones vas a ingresar?");
            
pp v.leeInt();
            
            
calif = new float [pp];
            
            for(
int c1=0c1<calif.length;c1++)
            {
                
System.out.println("Escribe la calificacion "+(c1+1));
                
calif[c1]= v.leeFloat();
            }
            
            
            
System.out.println("¿Cuantos creditos vas a ingresar?");
            
pp v.leeInt();
            
creditos = new int [pp];
            
            for(
int c1=0c1<calif.length;c1++)
            {
                
System.out.println("Escribe el credito "+(c1+1));
                
creditos[c1] = v.leeInt();
            }
            
            
Arreglo[c]= new Base(nombre,matricula,carrera,egreso,calif,creditos); <--------- aquí marca el error.
            
        }
        return (
Arreglo);
    } 
P.D Teclado es una clase para leer datos.
  #2 (permalink)  
Antiguo 12/11/2009, 11:48
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: ayuda para una clase abstracta

Base es abstracta, por lo tanto no se puede instanciar. Necesitas crear una clase no abstracta que derive de Base y que defina los métodos que son abstractos en Base, y luego instancias a esa nueva clase.

Espero que te ayude.
  #3 (permalink)  
Antiguo 13/11/2009, 11:14
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: ayuda para una clase abstracta

es como dice fuzzy..
Creo q deberías repasar los conceptos de class .. antes de seguir con tu POO
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 14:29.