This module introduces the core concepts of an object-oriented perspective in Java necessary to understand the grammar of Java, operators, data types, expressions, blocks, statements and control structures, standard mathematical functions and Strings, arrays, I/O streams and file input/output as well as output formatting to develop small applications (programming in the small) and provide to student ability to write large applications (programming in the large) using object-oriented programming to solve real application problems.