Java Programming

I.     Course Prefix/Number: CIS 211

       Course Name: Java Programming

       Credits: 4 (3 lecture; 2 lab)

II.    Prerequisite


III.   Course (Catalog) Description

Course continues to develop the knowledge needed to write object-oriented, interactive, business-related applications and applets using the Java programming language.  Topics include inheritance, polymorphism, exception handling, graphical user interfaces and event-handling, input/output streams, collections, and generic programming.  Students will code, compile, execute and debug Java programs. Recommended: CIS 101, and CSC 155 (C++) or CSC 156 (Java) or CSC157 (Python) or comparable programming knowledge or consent of instructor or program coordinator.

IV.   Learning Objectives

Upon completion of this course, the student will be able to:

  1. Demonstrate proficiency in coding, compiling, executing, and debugging object-oriented, interactive, business applications and applets
  2. Demonstrate proficiency in the computational tools of the Java language
  3. Design object-oriented solutions for assigned programs that utilize constructors, mutators, and extractors
  4. Use the inheritance mechanism to support extensions of ancestor classes to descendent classes
  5. Create robust object-oriented solutions that include abstract classes and interfaces
  6. Demonstrate appropriate design of graphical user interfaces (GUI) with various Swing objects and controlling events with the Abstract Windowing Toolkit
  7. Implement algorithms for intermediate data storage that utilize files and linear collections

V.    Academic Integrity and Student Conduct

Students and employees at Oakton Community College are required to demonstrate academic integrity and follow Oakton's Code of Academic Conduct. This code prohibits:

• cheating,
• plagiarism (turning in work not written by you, or lacking proper citation),
• falsification and fabrication (lying or distorting the truth),
• helping others to cheat,
• unauthorized changes on official documents,
• pretending to be someone else or having someone else pretend to be you,
• making or accepting bribes, special favors, or threats, and
• any other behavior that violates academic integrity.

There are serious consequences to violations of the academic integrity policy. Oakton's policies and procedures provide students a fair hearing if a complaint is made against you. If you are found to have violated the policy, the minimum penalty is failure on the assignment and, a disciplinary record will be established and kept on file in the office of the Vice President for Student Affairs for a period of 3 years.

Please review the Code of Academic Conduct and the Code of Student Conduct, both located online at

VI.   Sequence of Topics

  1. The Java programming environment
    1. Design and construction of a Java program
    2. Using command-line tools and text editors(s)
    3. Using an IDE such as Netbeans 7.0
  2. Fundamental programming structures in Java
    1. Primitive data types
    2. Reference data types
    3. Variables
      1. Naming conventions
      2. Types (string, char, floating, integer)
      3. Initializing variables
      4. Escape codes/sequences
      5. Display simple information on the screen
    4. Arithmetic and comparison operators
    5. Methods
    6. Type casting
    7. Enumerated types
    8. Strings
    9. Input and output
      1. Console
      2. File
    10. Control flow
      1. Conditional statements
      2. Loops
        1. Simple loops
        2. Breaking out of loops
        3. Counters
    11. Arrays
      1. One-dimensional arrays
      2. Multi-dimensional arrays
      3. Sort data in an array
      4. Array binary search
      5. Array list
  3. Classes and objects
    1. Predefined classes
    2. User-defined classes
      1. Constructors
      2. Mutators and accessor methods
    3. Encapsulation
    4. Create objects from pre-defined class (instantiation)
    5. Static methods and fields
    6. Method overloading
    7. Packages
    8. Documentation
      1. Types of comments
      2. Comment extraction
      3. Self-documenting
    9. Report generation
  4. Inheritance
    1. Inheritance hierarchies
    2. Polymorphism
    3. Dynamic binding
    4. Casting objects
    5. Abstracted classes
    6. The Object class
    7. Object wrappers, autoboxing, and unboxing
  5. Interfaces and inner classes
    1. Object cloning
    2. Interfaces and callbacks
  6. Introduction to graphics programming
    1. Introduction to Swing
    2. Working with frames and the components
    3. Event handling
    4. Mouse and Window events
    5. AWT Event hierarchy
  7. User interface components with swing
    1. Layout management
    2. Text input
    3. Screen controls
      1. Labels
      2. Text boxes
      3. Buttons
      4. List boxes
      5. Combo boxes
      6. Check boxes
      7. Radio buttons
      8. Dialog boxes
    4. Menus
      1. Icons
      2. Pop-up menus
      3. Toolbars
      4. Tooltips
      5. Flow control
    5. Dialog boxes
    6. Deploying applications and applets
      1. JAR files
      2. Java Web Start
      3. Applets
    7. Exceptions, assertions, and debugging
  8. File Processing
    1. Input and output streams
    2. Object serialization
    3. Random access file processing
      1. Display records
      2. Search records
      3. Update (Add, Edit, Delete, Undelete, Remove) records
      4. Generate reports from a file
      5. Random access file sort
      6. Binary search
      7. Pass information between frames
    4. Loops and file processing
  9. Deploying applications and applets
    1. JAR files
    2. Java Web Start
    3. Applets
  10. Exceptions, assertions, and debugging
  11. Switches
  12. Flags
  13. Generic programming
    1. Generic classes
    2. Generic methods
    3. Inheritance rules for generic types
  14. Collections
    1. Linked lists
    2. Array list and iterator
  15. Text Files

VII.  Methods of Instruction

  1. Lecture
  2. Hands-on lab
  3. Group and individual projects
  4. Class discussion

Course may be taught as face-to-face, hybrid or online course.

VIII. Course Practices Required

The student will be expected to complete appropriate assignments, quizzes, and tests to meet the course objectives as determined by the instructor.

IX.   Instructional Materials

Note: Current textbook information for each course and section is available on Oakton's Schedule of Classes.

X.    Methods of Evaluating Student Progress

  1. Exams
  2. Class assignments
  3. Programming assignments

XI.   Other Course Information

If you have a documented learning, psychological, or physical disability you may be entitled to reasonable academic accommodations or services. To request accommodations or services, contact the Access and Disability Resource Center at the Des Plaines or Skokie campus. All students are expected to fulfill essential course requirements. The College will not waive any essential skill or requirement of a course or degree program.

Oakton Community College is committed to maintaining a campus environment emphasizing the dignity and worth of all members of the community, and complies with all federal and state Title IX requirements.

Resources and support for
  • pregnancy-related and parenting accommodations; and
  • victims of sexual misconduct
can be found at

Resources and support for LGBTQ+ students can be found at

Electronic video and/or audio recording is not permitted during class unless the student obtains written permission from the instructor. In cases where recordings are allowed, such content is restricted to personal use only. Any distribution of such recordings is strictly prohibited. Personal use is defined as use by an individual student for the purpose of studying or completing course assignments.

For students who have been approved for audio and/or video recording of lectures and other classroom activities as a reasonable accommodation by Oakton’s Access Disabilities Resource Center (ADRC), applicable federal law requires instructors to permit those recordings. Such recordings are also limited to personal use. Any distribution of such recordings is strictly prohibited.

Violation of this policy will result in disciplinary action through the Code of Student Conduct.