The Message Class
The javax.mail.Message
class is the abstract superclass for all individual emails, news
postings, and similar messages:
public abstract class Message extends Object implements Part
There’s one concrete Message subclass in the
standard JavaMail API,
javax.mail.internet.MimeMessage
. This is used for both email and Usenet
news messages. Service providers are free to add classes for their
own message formats. For instance, IBM might provide a
NotesMessage class for Lotus Notes.
The Message class mainly declares abstract getter
and setter methods that define the common properties of most
messages. These properties include the addressees of the message, the
recipients of the message, the subject and content of the message,
and various other attributes. You can think of these as properties of
the envelope that contains the message.
Furthermore, the Message class implements the
Part interface. The Part
interface mostly handles the body of an email message. It declares
methods for getting and setting the content type of the message body,
getting and setting the actual message body content, getting and
setting arbitrary headers from the message, and getting input streams
that are fed by the message body. The main body part of a message can
contain other parts. This is used to handle attachments, message
bodies that are available in multiple formats, and other multipart
emails. Since the Message class is abstract and
needs to be subclassed by concrete classes such as
MimeMessage ...