What Is a Package?
A package is a namespace that organizes a set of related classes and
interfaces. Conceptually you can think of packages as being similar to
different folders on your computer. You might keep HTML pages in one
folder, images in another, and scripts or applications in yet another.
Because software written in the Java programming language can be
composed of hundreds or thousands of individual classes, it makes
sense to keep things organized by placing related classes and
interfaces into packages.
Reference
In general we use packages to resolve naming conflicts. In java API itself you will find classes sharing same name. For example Date
class. Java API has java.util.Date
and java.sql.Date
EDIT
In an organization development is not one person job. Sometimes project/product is divided into small parts which are done by several other isolated/outsourced team. In such cases the developer may not know the existence of class/interface.
Apart from this, let say you have class Account
which is already defined in a package and you need to need some more functionality to it. Now since it is already in use changes to it are not allowed. Here you are left with few options among which creating a new class is one simple option.