elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Clases abtractas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Clases abtractas  (Leído 2,988 veces)
Shakos

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Clases abtractas
« en: 7 Mayo 2011, 16:06 pm »

Estoy haciendo un trabajo para el cual es necesario el uso de clases abtractas, pero tengo algunos problemas.
Basicamente dentro de la clase abtracta hay un constructor, una funcion tipo string abtract y otras funciones no abtract en este caso, el problema se plantea cuando yo quiero instanciar un objeto de esa clase, es imposible, en las subclases con el comando super() aun puedes hacer algo pero necesito usar objetos de esa clase fuera de las subclases y se me plantea el problema que no se hacerlo.
He leido que se puede poner Nombre clase abtract x; ahora x es una variable que apunta a null, pero estamos en las mismas si yo quiero llamar a una de las funciones no abtract que se encuentran dentro de la clase abtract tengo que hacerlo de la siguiente manera//
x.nombredelafuncion(); // esto siempre me da un  null pointer , como es razonable dado que la variable no esta inicializada y no puedo crear un objeto vacio atraves de un constructor vacio dado que , al ser clase abtract no se puede.
Lo que quisiera saber es si hay alguna manera de llamar a esas funciones no abtract que se encuentran dentro de la clase abtract sin necesidad de utilizar un objeto de dicha clase para llamarlas, o si se tiene que usar un objeto indiquenme una inicialización correcta


En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Clases abtractas
« Respuesta #1 en: 7 Mayo 2011, 17:06 pm »

Código
  1. public static void Metodo(){
  2. }

Saludos


En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Shakos

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Clases abtractas
« Respuesta #2 en: 7 Mayo 2011, 17:45 pm »

no entiendo muy bien donde usarlo :S lo siento , no puedo poner el codigo porque es enorme pero...haber si puedo hacer un pequeño esquema

abtract class Publi{
//posee un constructor, un metodo abtracto y otros tantos que no lo son como el metodo addComentarios(Comentario c){
comentarios.add(c);// arraylist que mete comentarios
}

}

class Comentario{
// constructor de comentario

// metodo toString redefinido para la causa

}

class Persona{
//constructor de persona

// creo un nuevo objeto comentario

Ahora recuerdo que la funcion addComentario esta en publicacion por tanto para llamarla tiene que haber un objeto de tipo publicacion cosa que no puede ser porque es abtracta por tanto si finalmente quedase asi

Comentario x = new Comentario(persona, texto)

(objeto de publicacion ).addComentario(x);

}
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Clases abtractas
« Respuesta #3 en: 7 Mayo 2011, 17:50 pm »

Usa métodos estáticos.

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Shakos

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Clases abtractas
« Respuesta #4 en: 7 Mayo 2011, 19:40 pm »

Vale gracias despues de algunos intentos por fin lo he conseguido  ;D , ahora tengo otra duda, esta vez supongo que sera mas facil.

public int compareTo(Object o) {
    Persona x = (Persona) o;
    return nombre.compareTo(x.getNombre().toLowerCase());
  }

tengo este codigo en el que basicamente quiero que me ordene alfabeticamente los nombres de las personas, lo que pasa es que no se como imprimir la lista ordenada por pantalla.
He intentado con Collections.sort(listaPersonas), pero no me sirve me marca un error, dice que no encuentra el simbolo (traducido literalmente) pero la lista es un arraylist normal y corriente y esta en la misma clase, la cuestion es que para ordenar obligatoriamente me veo forzado a usar compareTo.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Clases en VB
Programación Visual Basic
Kizar 0 1,212 Último mensaje 17 Marzo 2006, 16:56 pm
por Kizar
clases
Programación Visual Basic
elmaro 2 1,747 Último mensaje 12 Septiembre 2006, 05:51 am
por elmaro
clases en C++
Programación C/C++
mapers 4 4,051 Último mensaje 25 Enero 2011, 06:21 am
por mapers
Clases
.NET (C#, VB.NET, ASP)
TheGhost(Z) 4 2,964 Último mensaje 14 Febrero 2011, 18:15 pm
por Edu
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines