Dec 07, 2023  
College Catalog 2023-2024 
College Catalog 2023-2024
Add to Favorites (opens a new window)

ITCS 2590 - Java 1

Credit Hours: 4.00

Prerequisites: ITCS 1140  or ITCS 1950  

ITCS 2590 provides students with a practical introduction to the Java programming language. Students learn how concepts of encapsulation, constructors, inheritance, and polymorphism are implemented within the language. Students code programs using primitive types, basic statements, and dynamic data structures. Additional topics involve objects, classes, applets, and API. Students implement all programs and/or examples on a microcomputer network.

Billable Contact Hours: 4

Search for Sections
Transfer Possibilities
Michigan Transfer Network (MiTransfer) - Utilize this website to easily search how your credits transfer to colleges and universities.
Outcome 1: Upon completion of this course, students will create a program that will use classes employing fundamental sequence, decision, loop, arrays, and pass arguments between methods.

  1. Building Blocks.
    1. Explain the basic structure of a Java program and demonstrate the compile and link process as it applies to the Java execution environment.
    2. Discuss fundamental concepts of OOP as it applies to the Java language.
    3. Identify and use primitive variables types used within the Java language.
  2. Loops and Decisions.
    1. Use if and switch structures to test primitive data types.
    2. Explain the uses of looping structures and contrast differences between do/while and for.
    3. Utilize break and continue as they apply to loops and the switch structure.
    4. Create simple methods using loops, decisions, and relational operators.
  3. Classes and Methods.
    1. Define and specify Class methods. Override methods within a Java program.
    2. Utilize instance, class, and local variables within a program.
    3. Explain package as it applies to the Java runtime system.
  4. Arrays and ArrayLists.
    1. Explain the differences between arrays and arraylists.
    2. Create a program that utilizes arrays and arraylists.

Outcome 2: Upon completion of this course, students will be able to create a program that will include most facets of Outcome #1 and provide exception handling, interface use and standard I/O processing.


  1. Constructors.
    1. Define and create basic constructors.
    2. Using a constructor within a class.
    3. Explain how Java implements garbage collection for memory.
  2. Inheritance and Interface.
    1. Use interface to create a pseudo multiple inheritance class.
    2. Create a program that will use a single class and an interface.
    3. Use ‘instance of’ to perform type checking of an object.
  3. Exception Handling.
    1. Develop a program using try and catch for error handling.
    2. Implement a throw to be handled by an appropriate try and catch within a program.
    3. Develop a program that produces a stack trace.

Outcome 3: Upon completion of this course, students will be able to understand common UML (Unified Modeling Language) diagrams.


  1. Object Oriented Design with the UML.
    1. Create a Use Case Diagram.
    2. Create a Class Diagram with methods and instance variables.
    3. Create a Sequence Diagram.
    4. Create an Activity Diagram.

  • Communication: The graduate can communicate effectively for the intended purpose and audience.
  • Critical Thinking: The graduate can make informed decisions after analyzing information or evidence related to the issue.
  • Global Literacy: The graduate can analyze human behavior or experiences through cultural, social, political, or economic perspectives.
  • Information Literacy: The graduate can responsibly use information gathered from a variety of formats in order to complete a task.
  • Quantitative Reasoning: The graduate can apply quantitative methods or evidence to solve problems or make judgments.
  • Scientific Literacy: The graduate can produce or interpret scientific information presented in a variety of formats.
CDO marked YES apply to this course:
Communication: YES
Critical Thinking: YES
Quantitative Reasoning: YES

  1. Overview of Programming and Problem Solving
  2. Java Syntax and Semantics
  3. Data Types
  4. Numeric Types, Expressions
  5. Classes
  6. Inheritance
  7. Program Input Output
  8. Software Design
  9. Conditions, Logical Expressions and Selection
  10. Looping
  11. Control Structures
  12. Arrays
  13. Object-Orientated Software Development

Primary Faculty
Kohl, Martin
Secondary Faculty

Associate Dean
Evans-Mach, Patrick
Balsamo, Michael

Primary Syllabus - Macomb Community College, 14500 E 12 Mile Road, Warren, MI 48088

Add to Favorites (opens a new window)