Standard |
CIS 2421 – Intermediate Java Programming
Programmers familiar with object-oriented concepts will learn how to develop Java[tm] applications. This course is used to teach students the syntax of the Java programming language and object-oriented programming with the Java programming language. The course uses the Java 2 Software Development Kit (SDK).
|
Competency Areas: |
Hours: |
|||
|
Understand JAVA virtual machine |
Class |
4 |
||
|
Able to understand classes and packages |
D. Lab |
6 |
||
|
Using JAVA identifiers, keywords, data types, and comments |
P. Lab/O.B.I. |
0 |
||
|
Able to use Boolean and arithmetic expressions, loops decisions, and switches |
Credit |
7 |
||
|
Ability to create and use JAVA array techniques |
|
|
||
|
Ability to code methods and constructors using objects and classes |
|
|
||
|
Ability to override methods and constructors, use of static and final variables and methods as well as wrapper classes |
|
|||
|
Ability to handle JAVA exceptions |
|
|
||
|
|
|
|
||
|
Prerequisite: CIS 2401, CIS 2411 |
||||
|
Corequisite: |
||||
|
|
|
|||
Course Guide |
||||
|
Competency |
After completing this
section, the student will: |
Hours |
||
|
Class |
D. Lab |
P. Lab/ O.B.I. |
||
|
UNDERSTAND JAVA VIRTUAL MACHINE |
2 |
3 |
0 |
|
|
|
List the key features of the Java programming language |
|
|
|
|
|
Describe the Java Virtual Machine |
|
|
|
|
|
Explain how garbage collection works |
|
|
|
|
|
Describe how security features work |
|
|
|
|
ABLE TO UNDERSTAND
CLASSES AND PACKAGES |
2 |
3 |
0 |
|
|
|
Define classes and packages |
|
|
|
|
|
Write a simple Java application, compile and run it |
|
|
|
|
|
Use the Java Applicaton Programming Interface (API) on-line documentation |
|
|
|
|
USING JAVA
IDENTIFIERS, KEYWORDS, DATA TYPES, AND COMMENTS |
4 |
6 |
0 |
|
|
Use comments in a program |
|
|
|
|
|
|
Distinguish between valid and invalid identifiers |
|
|
|
|
|
Recognize the keywords in the Java programming language |
|
|
|
|
|
List the eight primitive types |
|
|
|
|
|
Define literal values for numeric and textual types |
|
|
|
|
|
Describe the coding conventions for classes, interfaces, methods, variables, constants, and control structures |
|
|
|
|
|
Describe the terms class, object, member variable, and reference |
|
|
|
|
|
Create a class definition for a simple class containing primitive member variables |
|
|
|
|
|
Declare variables of class type |
|
|
|
|
Construct an object using the keyword new |
|
|
|
|
|
|
Access the member variables of an object using the dot notation |
|
|
|
|
|
Describe the significance of a reference variable and state the consequences of assignment between variables of class type |
|
|
|
|
ABLE TO USE BOOLEAN
AND ARITHMETIC EXPRESSIONS, LOOPS DECISIONS, AND SWITCHES |
4 |
6 |
0 |
|
|
Distinguish between member and automatic variables |
|
|
|
|
|
|
Describe the initialization of member variables |
|
|
|
|
|
Recognize and correct a "Possible reference before assignment" compiler error |
|
|
|
|
|
Recognize, describe, and use operators |
|
|
|
|
Distinguish between legal and illegal assignments of primitive types |
|
|
|
|
|
|
Recognize Boolean expressions and state the requirement for these in control constructs |
|
|
|
|
|
Recognize assignment compatibility and required casts in fundamental types |
|
|
|
|
|
Make appropriate use of if, switch, for, while, and do constructions and the labeled forms of break and continue |
|
|
|
|
ABILITY TO CREATE
AND USE JAVA ARRAY TECHNIQUES |
4 |
6 |
0 |
|
|
Declare and create arrays of primitive, class, or array types |
|
|
|
|
|
|
Explain why and show how to initialize the elements of an array |
|
|
|
|
|
Determine the number of elements in any array |
|
|
|
|
|
Write code to copy arrays |
|
|
|
|
ABILITY TO CODE
METHODS AND CONSTRUCTORS USING OBJECTS AND CLASSES |
8 |
12 |
0 |
|
|
Describe encapsulation, polymorphism, and inheritance |
|
|
|
|
|
Write code to define a method |
|
|
|
|
|
|
Write code to create and initialize an object |
|
|
|
|
|
Use the this keyword to access the "current" object |
|
|
|
|
|
Use private and public access modifiers |
|
|
|
|
|
Write code to invoke a method on a particular object |
|
|
|
|
|
Write class constructors and invoke particular constructors using new with arguments |
|
|
|
|
|
Invoke overloaded methods and constructors |
|
|
|
|
|
Use subclassing |
|
|
|
|
|
Create and use heterogeneous collections |
|
|
|
|
|
Create and use methods that accept generic argument types |
|
|
|
|
|
Write overriding methods in a subclass and describe execution flow when executing an overridden method |
|
|
|
|
|
Invoke overridden methods and describe how the method is chosen |
|
|
|
|
|
Understand the use of import statements for library access |
|
|
|
|
ABILITY TO OVERRIDE
METHODS AND CONSTRUCTORS, USE OF STATIC AND FINAL VARIABLES AND METHODS AS
WELL AS WRAPPER CLASSES |
8 |
12 |
0 |
|
|
Develop overriding methods and invoke overridden methods |
|
|
|
|
|
|
Invoke overridden constructors |
|
|
|
|
|
Control invocation of parent class constructors |
|
|
|
|
|
Declare and use static variables and methods |
|
|
|
|
|
Declare and use final classes, methods, and variables |
|
|
|
|
|
Use abstract methods and interfaces |
|
|
|
|
|
Use access control levels |
|
|
|
|
|
Identify deprecated classes and describe how to handle them during migration to Java 2 SDK |
|
|
|
|
|
Use inner classes |
|
|
|
|
|
Use wrapper classes |
|
|
|
|
Describe collections |
|
|
|
|
|
Describe reflection |
|
|
|
|
|
ABILITY TO HANDLE
JAVA EXCEPTIONS |
8 |
12 |
0 |
|
|
Define exceptions |
|
|
|
|
|
|
Describe the usage of the keywords try, catch, and finally |
|
|
|
|
|
Describe exception categories |
|
|
|
|
|
Identify common exceptions |
|
|
|
|
|
Write code to handle your own exceptions |
|
|
|
Suggested Resources |
Books:
Deitel and Deitel, Java how to Program, 0-13-0345151-7, Prewntice-Hall, 2002.
Farrell,
Java Programming: Comprehensive, 0-7600-1070-6 ,
Course Technology, 1999.