Primary Navigation
  • About
  • Academics
  • Continuing Education
  • Admission
  • Student Life
  • Student Services
  • Library
  • News and Events
  • Giving
Java Programming

I.     Course Prefix/Number: CIS 211

       Course Name: Java Programming

       Credits: 4 (3 lecture; 2 lab)

II.    Prerequisite

Recommended: CSC155 (C++) or CSC156 (Java) or ability to write programs using an object-oriented language (e.g. Java, C#, Visual Basic)

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. Fundamental of Java programming will be reviewed.

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

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.
Details of the Code of Academic Conduct can be found in the Student Handbook.

VI.   Sequence of Topics

A.    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
B.    Fundamental programming structures in Java
    1.    Primitive data types
    2.    Reference data types
    3.    Variables
        a.    Naming conventions
        b.    Types (string, char, floating, integer)
        c.    Initializing variables
        d.    Escape codes/sequences
        e.    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
        a.    Console
        b.    File
    10.    Control flow
        a.    Conditional statements
        b.    Loops
            1)    Simple loops
            2)    Breaking out of loops
            3)    Counters
    11.    Arrays
        a.    One-dimensional arrays
        b.    Multi-dimensional arrays
        c.    Sort data in an array
        d.    Array binary search
        e.    Array list
C.    Classes and objects
    1.    Predefined classes
    2.    User-defined classes
        a.    Constructors
        b.    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
        a.    Types of comments
        b.    Comment extraction
        c.    Self-documenting
    9.    Report generation
D.    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
E.    Interfaces and inner classes
    1.    Object cloning
    2.    Interfaces and callbacks
F.    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
G.    User interface components with swing
    1.    Layout management
    2.    Text input
    3.    Screen controls
        a.    Labels
        b.    Text boxes
        c.    Buttons
        d.    List boxes
        e.    Combo boxes
        f.    Check boxes
        g.    Radio buttons
        h.    Dialog boxes
    4.    Menus
        a.    Icons
        b.    Pop-up menus
        c.    Toolbars
        d.    Tooltips
        e.    Flow control
    5.    Dialog boxes
    6.    Deploying applications and applets
        a.    JAR files
        b.    Java Web Start
        c.    Applets
    7.    Exceptions, assertions, and debugging
H.    File Processing
    1.    Input and output streams
    2.    Object serialization
    3.     Random access file processing
        a.    Display records
        b.    Search records
        c.    Update (Add, Edit, Delete, Undelete, Remove) records
        d.    Generate reports from a file
        e.    Random access file sort
        f.    Binary search
        g.    Pass information between frames
    4.    Loops and file processing
I.    Deploying applications and applets
    1.    JAR files
    2.    Java Web Start
    3.    Applets
J.    Exceptions, assertions, and debugging
K.    Switches
L.    Flags
M.    Generic programming
    1.    Generic classes
    2.    Generic methods
    3.    Inheritance rules for generic types
N.    Collections
    1.    Linked lists
    2.    Array list and iterator
O.    Text Files

VII.  Methods of Instruction

A. Lecture
B. Hands-on lab
C. Group and individual projects
D. Class discussion
Course may be taught as face-to-face, media-based, 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

A.  Exams
B.  Class assignments
C.  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.