Packages and interfaces form a very important concept in
Java. In our day to day life, as a software developer, sometimes we need to
handle small projects and at other times, big projects. In small projects, it is
a normal practice to keep all the related files in a single directory. For
example, all Java files use a single directory, all CSS files in some other
directory, etc. But as the number of files increase when the project becomes
big, it really becomes difficult to maintain all the files in the same
directory. In Java this problem can be avoided by the use of packages.