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

¿Cuál es la diferencia entre clase abstracta e interfaz?

Estas en el tema de ¿Cuál es la diferencia entre clase abstracta e interfaz? en el foro de .NET en Foros del Web. ¡Hola! Bueno ya se que este tema está más repetido que los Simpson... pero nunca he tocado mucho todo este tema y estoy nadando un ...
  #1 (permalink)  
Antiguo 03/04/2009, 16:58
 
Fecha de Ingreso: junio-2008
Ubicación: secreto
Mensajes: 65
Antigüedad: 15 años, 11 meses
Puntos: 2
Información ¿Cuál es la diferencia entre clase abstracta e interfaz?

¡Hola! Bueno ya se que este tema está más repetido que los Simpson... pero nunca he tocado mucho todo este tema y estoy nadando un poco en la ignorancia...

(Estoy programando en C#, aunque creo que es igual en JAVA y otros lenguajes..)

Una clase que hereda de una clase abstracta o de una interfaz, hacen exactamente lo mismo, es decir, implementan sus métodos (si vale, con una sintaxis un pelín diferente en cada caso...)

A lo que voy... si hacen lo mismo ¿Que diferencia hay?

Otra cosa más, si las dos hacen lo mismo.... ¿que diferencia hay en que implemente de una y herede de otra, o viceversa?

Estoy leyendo mucho por internet pero no doy con una solución que me ayude...

¡Gracias de antemano!
  #2 (permalink)  
Antiguo 04/04/2009, 07:34
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: ¿Cuál es la diferencia entre clase abstracta e interfaz?

las clases abstractas pueden tener o no implementaciones de los metodos miembros de la clase, y las interfaces no tienen ninguna implementacion solo las declaraciones de los miembros que deben constituir la clase que implemente dicha interfaz.

los miembros de la interfaz deben ser publicos y sin implementacion

Código:
interface iMiInterfaz
{
  int Sumar(int Num1, int Num2);
  int Multiplicar(int Num1, int Num2);
}
las clases abstractas pueden tener miembros abstractos y no abstractos (es decir sobrecargables en las clases que hereden de ella). pero en las interfaces todos los miembros son implicitamente abstractos, y todos los miembros de la interfaz deben ser reimplementados en la clase que derive de esta.


Código:
    abstract class MiClaseAbstracta
      {
            public int Suma(int Num1, int Num2)
            {
                return Num1 + Num2;
            }

            public abstract int Multiplicacion(int Num1, int Num2);
      }
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #3 (permalink)  
Antiguo 04/04/2009, 10:34
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.692
Antigüedad: 23 años, 6 meses
Puntos: 19
Respuesta: ¿Cuál es la diferencia entre clase abstracta e interfaz?

Hola amigo.
Ya que estamos acá y si no problem para el amigo que creo el post:

Para que sirven "Partial Class", por ahí leí que es para que despues las puedas unir con otras partial class y sean una clase. Pero no entiendo nada esto, para que te puede servir ¿Pueden comentar brevemente un ejemplito de cuando se usuario?
__________________
PD: Con amor, fe, amor a Dios y amistad podemos hacer un mundo mejor!!!!
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 01:01.