Why is JavaMail Transport.send() a static method?

二次信任 提交于 2019-12-05 05:23:00
Sean Owen

Transport.send() is basically a convenience method. Yes, if you're managing your own Transport instance, call sendMessage().

I'm not sure I consider it bad design, since frequently you don't care to manage the details of sending and monitoring transport. Crack open the send() method to see what it does for you. Other ways of naming or placing this method could be marginally better.

The javadoc says:

Send is a static method that creates and manages its own connection. Any connection associated with any Transport instance used to invoke this method is ignored and not used. This method should only be invoked using the form Transport.send(msg);, and should never be invoked using an instance variable.

And yes probably, the design is not good

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!