This course introduces students to the fundamental programming concepts using the Java language. Students will learn the proper use of control structures such as selection, looping and modularization. They will also become proficient at using the basic Java syntax to implement program designs. Students will learn how a language such as Java handles various primitive data types and how standard classes are used to support the storage and manipulation of more complex data. Students will be introduced to "Encapsulation", the first concept of Object Oriented Programming (OOP).