example java partial-classes

example - Una forma de implementar clases parciales en java.



graphics java example (4)

Antes de tomar esa ruta, es posible que desee considerar el patrón de diseño del Generador . Eso le permite a su servicio agregar implementaciones que se implementan en clases separadas. No es necesario un precompilador, y muy limpio desde una perspectiva OO.

Cada clase de componente tiene una responsabilidad específica y limitada, con la clase de servicio alistando los servicios de sus clases de componente para implementar solo la responsabilidad del servicio.

Si realmente desea ( no recomendado ), puede usar un preprocesador para ensamblar partes de una clase antes de la compilación.

El único escenario en el que un preprocesador podría tener sentido es si parte de su implementación es generada por código y otras partes están codificadas a mano. Un enfoque directo podría ser #incluir los fragmentos de clase definidos externamente en su archivo .java principal y ejecutar un preprocesador de C sobre el archivo antes de la compilación.

Tengo una interfaz que quiero implementar en clases separadas después de hacer una búsqueda rápida en Google, aparentemente, Java no tiene clases parciales. ¿Hay alguna forma en que pueda hacer esto o estoy atascado al lanzar todo mi código en una clase?

Básicamente, estoy tratando de escribir un servicio. Algunos de los métodos de servicio realmente pertenecen a su propia clase y parecen un poco ilógicos en la misma clase. Aquí hay un ejemplo de lo que estoy tratando de hacer.

package com.upmc.esdm.messaging.epcd.service; import java.util.List; import javax.ejb.Remote; import com.upmc.esdm.messaging.epcd13jpa.entities.EmailDomainTrust; @Remote public interface MessagingInterfaceRemote { public List<EmailDomainTrust> getEmailDomains(); public int upDateQualityTable(); public string isLogial(); public byte[] ToWritePartialClassesInJava(); }

Normalmente tendría clases parciales en C # y pondría métodos similares que devuelven valores similares en una clase parcial (o quizás clases que actualizan un registro en una clase). ¿Cómo implementaría esto? ¿O debería simplemente poner todas las implementaciones de métodos en una clase?

Gracias.


Aspectj puede ser la respuesta a la característica de clase parcial C # / .net! Spring Roo es uno de los marcos de desarrollo típicos que utilizan aspectj para dividir las funcionalidades de una clase en varios archivos diferentes.


No hay nada como clases parciales en Java. Puede lograr muchos de los mismos beneficios utilizando la agregación, la delegación y las clases base abstractas.

(He cedido a la presión de mis compañeros y he eliminado el comentario de "agradecimiento" que ha generado tanto calor en los comentarios. Evidentemente, ese pequeño aparte parece haber ganado cuatro votos, a pesar de ser irrelevante para la respuesta).


Puede declarar métodos a través de múltiples interfaces y luego dejar que sus clases concretas implementen múltiples interfaces.

Además, con java.lang.Proxy puede ensamblar su servicio desde múltiples interfaces y delegar llamadas de métodos reales a una implementación separada.