packages are mechanism for organizing classes and interfaces into namespace, preventing naming conflicts, improving code maintainability, and controlling access to classes.
They group related code together, similar to folders in a file system.
the classpath is an environment variable or command line parameter that tells the java compiler and jvm where to find the compiled .class files and libs.
purpose -
helps locate classes in packages when compiling or running java programs.
specifies directories, JAR files, or ZIP file containing class files.
packages control access to classes and their members using [[access modifiers]]. the accessibility of package members depends on these modifiers and package structure.