Students are required to design and solve problems with a computer by using a sophisticated object-oriented programming language, Java. Topics covered include an overview of computers and programming languages, the basic elements of Java, an introduction to objects and input/output, selection control structures, and repetition control structures. Time permitting, we will explore additional topics in Java. This course is a prerequisite for AP Computer Science in Java.