COP 2250 - Java Programming I

College of Computer & Information Technology

Credit(s): 3
Contact Hours: 47
Effective Term Fall 2018 (550)

Requisites

Prerequisite COP 1000 with a minimum grade of C

Course Description

This is a beginning programming course in the Java language. The student will learn to solve programming problems by designing, coding, executing, and debugging Java programs. Major topics covered include: data types and expressions, selections, loops, methods, arrays, class ArrayList, class String, regular expressions, class StringBuilder, data classes and object-oriented programming, and exception handling.

Learning Outcomes and Objectives

  1. The student will code Java programs to solve computer programming problems of various difficulty levels by:
    1. analyzing programming problems and developing solutions as a sequence of ordered steps.
    2. expressing the sequence of ordered steps in Java coding statements.
    3. choosing appropriate data types and identifiers for Java variables.
  2. The student will code Java programs to read keyboard input, perform calculations, and generate output by:
    1. coding Java programs that use the Scanner class to read keyboard input into variables.
    2. coding Java programs that use arithmetic operators and evaluate mathematical expressions.
    3. coding Java programs that use constants.
    4. coding Java programs that work with methods of class String.
    5. coding Java programs that format numeric output to specified decimal places.
  3. The student will code Java programs that employ simple and nested decision structures by:
    1. coding Java solutions to programming problems that require if-else and if-else if-else selections.
    2. coding Java solutions to programming problems using a switch.
    3. writing Java code that generates random integers within a specified range.
    4. coding Java programs using conditional expressions.
  4. The student will code simple and nested loops, possibly using accumulators and counters by:
    1. writing Java programs that use simple and nested while loops and do while loops.
    2. writing Java programs that use simple and nested for loops and for each loops.
    3. controlling loop iterations with the break and continue keywords.
    4. coding Java programs that employ counters and accumulators.
  5. The student will design and code methods, including methods needing arguments or returning a value by:
    1. writing and calling custom void methods and custom methods that return a value.
    2. writing and calling custom methods that require one or more arguments.
    3. coding Java programs that demonstrate knowledge of variable scope.
    4. coding Java programs that feature method overloading.
  6. The student will code Java programs using simple arrays and ArrayLists by:
    1. writing programs that create simple arrays of primitive types and strings, ArrayLists of strings and wrapper types.
    2. writing and calling methods that take arrays as arguments and methods that return an array.
    3. coding programs that process arrays with loops and programs that copy, search, and sort arrays.
  7. The student will code custom Java classes and create objects to model data for programming problems by:
    1. defining classes with instance variables, constructor methods, and instance methods.
    2. defining classes with static variables, static methods, and constants.
    3. writing Java programs that create objects, arrays and ArrayLists of objects.
    4. coding Java programs that instantiate custom classes and demonstrate encapsulation.
    5. coding programs that pass objects to methods and return objects from methods.
    6. writing programs that use classes StringBuilder and StringBuffer.
  8. The student will define exception handling and the types of exceptions by:
    1. writing programs that handle errors efficiently by using exceptions.
    2. distinguishing between checked and unchecked exceptions.
    3. defining custom exception classes and coding methods that throw exceptions.

Criteria Performance Standard

Upon successful completion of the course the student will, with a minimum of 70% accuracy, demonstrate mastery of each of the above stated objectives through classroom measures developed by individual instructors.

History of Changes

C&I 4/11/00, DBT 5/16/00, eff 20001 C&I 6/26/01, Board 8/21/01, Eff 20011. Flexible Access 2001. C&I 2/8/05, BOT 3/21/05, Eff 20043(0350). 3 Year Review 2008. C&I 11/30/2012, BOT 1/15/2013, Effective 20131(0475). C&I Approval: 11/30/2012, BOT Approval: 01/15/2013, Effective Term: Fall 2013 (475). C&I Approval: 04/24/2015, BOT Approval: 06/16/2015, Effective Term: Spring 2016 (510). C&I Approval: , BOT Approval: , Effective Term: Spring 2018 (540).
C&I Approval: , BOT Approval: , Effective Term: Fall 2018 (550)

Related Programs

  1. Computer Programmer (CMPRG-CT) (580) (Active)
  2. Computer Programming and Analysis (CWPA-AS) (640) (Draft)
  3. Computer Programming and Analysis (CWPA-AS) (640) (Active)
  4. Computer Programming Specialist (CPS-CT) (580) (Active)
  5. Florida Gulf Coast University Computer Science (FGCUCS-TR) (670) (Active)
  6. Florida Gulf Coast University Software Engineering (FGCUSE-TR) (670) (Active)
  7. Oracle Certified Associate Java Programmer (to CMPRG-CT) (JAVAPIC-AR) (595) (Active)
  8. Oracle Certified Associate Java Programmer (to CPS-CT) (JAVAP3IC-AR) (590) (Active)
  9. Oracle Certified Associate Java Programmer (to CWPA-AS) (JAVAP2IC-AR) (650) (Active)
  10. Oracle Java Foundations Certified Junior Associate (to CWPA-AS) (JAVFJA-AR) (585) (Active)
  11. Technology Development & Management (TMGT-TR) (670) (Active)
  12. USF Tampa - Computer Science (FTCOSC-TR) (670) (Active)
  13. USF Tampa - Cybersecurity (FTCYSEC-TR) (670) (Active)
  14. USF Tampa - Information Technology (FTINFO-TR) (670) (Active)