método abstracto
Sólo un comunicado, sin especificar el contenido del método
Los métodos abstractos no pueden ser llamados directamente, es necesario reescribir
declaración
La misma declaración método general, añadir la palabra clave abstracta
abstracto alcances tipo de retorno del nombre del método ();
clase abstracta
Contiene métodos abstractos de la clase es una clase abstracta
Una clase abstracta no puede ser utilizado directamente, no se pueden crear instancias.
efecto
Dile subclase de lo que puede hacerse, pero sin contenido operativo específico.
clase abstracta debe ser heredado, métodos abstractos de reescritura en una subclase.
(Programación orientada a Resumen)
declaración
clase abstracta nombre de la clase {
...
}
Heredar
Una clase abstracta puede heredar de la clase abstracta
interfaz
Una clase especial que contiene un público constantes globales y métodos abstractos.
efecto
Interfaz de herencia múltiple (sólo sola clase herencia)
La determinación de una clase de funciones, por interfaz de programación
declaración
Interfaz nombre de la interfaz {
Constantes mundial
método abstracto
}
Debido a que todos los métodos de interfaz son métodos abstractos públicos resumen palabra clave pública se puede omitir
Heredar
- Interfaz de interfaces heredables, clases abstractas no pueden ser heredados y de categoría general
- las interfaces de herencia necesitan utilizar implementos de palabras clave, y pueden heredar múltiples interfaces de
-
clase ordinaria hereda una interfaz, la interfaz debe invalidar todos los métodos
por ejemplo,
// declarar una interfaz A , que contiene dos métodos abstractos: impresión , Área
interfaz A {
vacío de impresión ();
flotador área ( doble r);
}
// declarar una interfaz B , contiene métodos abstractos len
interfaz B {
flotador len ( doble w, doble h}
}
// crear una clase común y heredarse de las interfaces A y B
clase de prueba implementos A, B {
// todos los métodos de la interfaz deben anular
@Anular
vacío de impresión () {
...
}
@Anular
flotador área ( doble r) {
volver 3.14 r * r *;
}
flotar len ( doble w, doble h) {
volver w * h * 2;
}
}