一种在java中实现部分类的方法

我有一个界面,我想在快速谷歌搜索后在单独的类中实现,显然,Java没有部分类。 有没有办法可以做到这一点,还是我把所有代码都扔进了一个类?

基本上,我正在尝试编写服务。 一些服务方法确实属于他们自己的类,并且在同一个类中看起来有点不合逻辑。 这是我想要做的一个例子。

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 getEmailDomains(); public int upDateQualityTable(); public string isLogial(); public byte[] ToWritePartialClassesInJava(); } 

我通常会在C#中使用部分类,并且我会将类似的值返回到一个部分类(或者更新一个类中的记录的类)。 我该如何实现? 或者我应该将所有方法实现放在一个类中?

谢谢。

Java中没有类似于部分类的东西。 您可以使用聚合,委派和抽象基类实现许多相同的好处。

(我已经屈服于同伴的压力,消除了在评论中引起如此多热情的“谢天谢地”的评论。显然,尽管与答案无关,但小小的旁边似乎已经为我赢得了四次投票。)

Aspectj可以是C#/ .net部分类function的答案! Spring Roo是使用aspectj将类function划分为几个不同文件的典型开发框架之一。

您可以通过多个接口声明方法,然后让您的具体类实现多个接口。

此外,使用java.lang.Proxy,您可以从多个接口组装服务,并将实际方法调用委托给单独的实现。

在走这条路线之前,您可能需要考虑Builder设计模式 。 这允许您的服务聚合在单独的类中实现的实现。 从OO的角度来看,不需要预编译器,而且非常干净。

每个组件类都有一个特定的,狭窄的责任,服务类使用它的组件类的服务来实现服务的责任。

如果你真的想( 不推荐 ),你可以在编译之前使用预处理器来组装类的一部分。

预处理器可能有意义的唯一情况是,您的某些实现是代码生成的,而其他部分是手工编码的。 一种简单的方法可能是#include主.java文件中的外部定义的类片段,并在编译之前在文件上运行C预处理器。