Introduction to Programming in Java

Course Content from Zyante
Course Number: CS101 Download Course Syllabus

This course is focused on the interactive learning of programming in Java foundations and emphasizes a solid understanding of memory. From the moment variables are introduced, the material shows via animations how variables exist and are updated in memory. The continued showing of memory helps clarify challenging topics like pass-by-copy/reference parameters, object creation, garbage collection, and more. Furthermore, the material includes emphasis on disciplined program development, including incremental development, modular development, and testing/debugging.

This Course Includes:

  • Proctored Exams
  • 48 hours grading turn-around
  • Live technical and student support
  • Free transcription to your destination school
  • 150+ partner college and universities with direct articulation

  • Self Paced
  • Computer Science
  • Content by Zyante
Online Course
Introduction to Programming in Java   +$99.00
Tutoring (included)
Proctoring
Proctoring   +$0.00
Credits 3

No reviews have been submitted for Introduction to Programming in Java

Course Objectives

After completing this course, students will be able to:

  • Use standard input and output, and understand common syntax errors
  • Declare and initialize variables with valid identifiers
  • Develop programs that branch based on user input
  • Combine loops and arrays/lists, and develop programs with multiple arrays/lists
  • Write a function/method, then return from a function/method and parameterize a function
  • Initialize class variables with class constructor
  • Create derived and abstract classes
  • Write a recursive function
  • Use binary search, O notation, and algorithm analysis

Topic Number

Topic Title

Subtopics

1

Introduction to Java

  • Programming (general)
  • Programming basics
  • Comments and whitespace
  • Errors and warnings
  • Computers and programs (general)
  • Computer tour
  • Language history
  • Problem solving
  • Why programming
  • Why whitespace matters
  • Java example: Married-couple names

2

Variables / Assignments

  • Variables and assignments (general)
  • Variables (int)
  • Identifiers
  • Arithmetic expressions (general)
  • Arithmetic expressions (int)
  • Example: Health data
  • Floating-point numbers (double)
  • Scientific notation for floating-point literals
  • Constant variables
  • Using math methods
  • Integer division and modulo
  • Type conversions
  • Binary
  • Characters
  • Strings
  • Integer overflow
  • Numeric data types
  • Random numbers
  • Reading API documentation
  • Debugging
  • Style guidelines
  • Java example: Salary calculation with variables
  • Java example: Married-couple names with variables

3

Branches

  • If-else branches (general)
  • If-else
  • More if-else
  • Equality and relational operators
  • Detecting ranges (general)
  • Detecting ranges with if-else statements
  • Logical operators
  • Order of evaluation
  • Example: Toll calculation
  • Switch statements
  • Boolean data type
  • String comparisons
  • String access operations
  • Character operations
  • More string operations
  • Conditional expressions
  • Floating-point comparison
  • Short circuit evaluation
  • Java example: Salary calculation with branches
  • Java example: Search for name using branches

4

Loops
  • Loops (general)
  • While loops
  • More while examples
  • For loops
  • More for loop examples
  • Loops and strings
  • Nested loops
  • Developing programs incrementally
  • Break and continue
  • Variable name scope
  • Enumerations
  • Java example: Salary calculation with loops
  • Java example: Domain name validation with loops

5

Arrays
  • Array concept (general)
  • Arrays
  • Array iteration drill
  • Iterating through arrays
  • Multiple arrays
  • Swapping two variables (General)
  • Loop-modifying or copying/comparing arrays
  • Debugging example: Reversing an array
  • Two-dimensional arrays
  • Enhanced for loop: Arrays
  • Java example: Annual salary tax rate calculation with arrays
  • Java example: Domain name validation with arrays

6

User-Defined Methods
  • User-defined method basics
  • Return
  • Reasons for defining methods
  • Methods with branches/loops
  • Unit testing (methods)
  • How methods work
  • Methods: Common errors
  • Array parameters
  • Scope of variable/method definitions
  • Method name overloading
  • Parameter error checking
  • Using Scanner in methods
  • Perfect size arrays
  • Oversize arrays
  • Methods with oversize arrays
  • Comparing perfect size and oversize arrays
  • Using references in methods
  • Returning arrays from methods
  • Common errors: Methods and arrays
  • Java documentation for methods
  • Java example: Salary calculation with methods
  • Java example: Domain name validation with methods

7

Objects and Classes
  • Objects: Introduction
  • Using a class
  • Defining a class
  • Mutators, accessors, and private helpers
  • Initialization and constructors
  • Choosing classes to create
  • Defining main() in a programmer-defined class
  • Unit testing (classes)
  • Constructor overloading
  • Objects and references
  • The ‘this’ implicit parameter
  • Primitive and reference types
  • Wrapper class conversions
  • ArrayList
  • Classes and ArrayLists
  • ArrayList ADT
  • Java documentation for classes
  • Parameters of reference types
  • Static fields and methods
  • Using packages
  • Java example: Salary calculation with classes
  • Java example: Domain name availability with classes

8

Memory Management
  • Introduction to memory management
  • A first linked list
  • Memory regions: Heap/Stack
  • Basic garbage collection
  • Garbage collection and variable scope
  • Java example: Employee list using ArrayLists

9

Input / Output
  • Output and input streams
  • Output formatting
  • Streams using Strings
  • File input
  • File output

10

Inheritance
  • Derived classes
  • Access by members of derived classes
  • Overriding member methods
  • The Object class
  • Polymorphism
  • ArrayLists of Objects
  • Abstract classes: Introduction (generic)
  • Abstract classes
  • Is-a versus has-a relationships
  • UML
  • Interfaces
  • Java example: Employees and instantiating from an abstract class
  • Java example: Employees and overriding class methods

11

Recursion
  • Recursion: Introduction
  • Recursive methods
  • Recursive algorithm: Search
  • Adding output statements for debugging
  • Creating a recursive method
  • Recursive math methods
  • Recursive exploration of all possibilities
  • Stack overflow
  • Java example: Recursively output permutations

12

Exceptions
  • Exception basics
  • Exceptions with methods
  • Multiple handlers
  • Exception handling in file input/output
  • Java example: Generate number format exception

13

Generics
  • Comparable Interface: Sorting an ArrayList
  • Generic methods
  • Class generics
  • Java example: Map values using a generic method

14

Collections

  • Enhanced for loop
  • Map: HashMap
  • Set: HashSet
  • List: LinkedList
  • Queue interface
  • Deque interface

15

GUI
  • Basic graphics
  • Introduction to graphical user interfaces
  • Positioning GUI components using a GridBagLayout
  • GUI input and ActionListeners
  • GUI input with formatted text fields
  • GUI input with JSpinners
  • Displaying multi-line text in a JTextArea
  • Using tables in GUIs
  • Using sliders in GUIs
  • GUI tables, fields, and buttons: A seat reservation example
  • Reading files with a GUI

16

JavaFX

  • Introduction to graphical user interfaces with JavaFX
  • Positioning GUI components using a GridPane
  • Input and event handlers
  • Basic graphics with JavaFX

17

Searching and Sorting Algorithms

  • Searching and algorithms
  • Binary search
  • O notation
  • Algorithm analysis
  • Sorting: Introduction
  • Selection sort
  • Insertion sort
  • Quicksort
  • Merge sort

18

Final Exam

  • Final Exam

StraighterLine suggests, though does not require, that students take Pre-Calculus or its equivalent before enrolling in this course.

This course does not require a text.

StraighterLine does not apply letter grades. Students earn a percentage score. A passing percentage is 70% or higher.

If you have chosen a Partner College to award credit for this course, your final grade will be based upon that college’s grading scale. Only passing scores will be considered by Partner Colleges for an award of credit.

There are a total of 1000 points in the course:

Topic

Assessment

Points Available

1 Chapter 1: Introduction to Java 29
2 Chapter 2: Variables / Assignments 29
3 Chapter 3: Branches 29
4 Chapter 4: Loops 29
5 Chapter 5: Arrays 29
6 Chapter 6: User-Defined Methods 29
7 Chapter 7: Objects and Classes 29
8 Chapter 8: Memory Management 29
9 Chapter 9: Input / Output 29
9 Midterm Exam 207
10 Chapter 10: Inheritance 29
11 Chapter 11: Recursion 29
12 Chapter 12: Exceptions 29
13 Chapter 13: Generics 29
14 Chapter 14: Collections 29
15 Chapter 15: GUI 29
16 Chapter 16: JavaFX 29
17 Chapter 17: Searching and Sorting Algorithms 29
18 Final Exam 300

Total

 

1000

Only registered users can write reviews. Please, log in or register

Explore Other Options