A BitSet is typically used to store an application's option flags (each of which may only be true or false, e.g. "Enable the foo feature?" and "Always show the foo warning?"). While you can often do the same thing using bit operations on an int or long value, BitSet generally makes these operations more readable. Also, the int/long method gets far more troublesome when you need more than 64 flags, whereas BitSet can handle an arbitrary number of flags.
P.S.: None of these classes are on the
SCJP exam, so don't get worried if you're just preparing for the exam and you happened to read this
thread.