Study Guide for CPSC 5000 Waiver Test
Programming Language: Java
1. Number Types, Variables, Constants, Operators
• Commonly used number types, declaration and use of variables, declaration and use of constants
• Arithmetic operators, increment vs. decrement, integer division and remainder, power and roots, cast operators; be able to determine the value of a given expression • Strings, string concatenation, escape sequences, strings and characters, substrings • Arrays, two-dimensional arrays, array lists
2. Input, Output, Exception Handling
• Reading input, formatted output
• Reading and writing text files, text input and output
• Exception handling (throwing exceptions, catching exceptions, checked exceptions, closing resources), designing your own exception types
3. If statement
• Relational operators for comparing values (integers, floating-point numbers, strings, objects) • Boolean variables and operators, logical conditions
• Multiple alternatives using if, switch statement
• Nested branches/if
4. Loops
• The while loop
• The for loop
• The do loop
• Sentinel values
• Common loop algorithms
• Nested loops
5. Classes and Objects
• Concepts of classes and objects, concept of encapsulation, advantages of encapsulation
• Instance variables, instance variables vs. local variables, constructors, methods, public interface of a class
• Implementing and designing classes, constructing objects
• Discovering classes for programming problems
• Inheritance: implementing subclasses, overriding methods
• Interfaces: declaring an interface type, implementing an interface type, working with interface variables (converting from classes to interfaces, invoking methods on interface variables, casting from interfaces to classes), the Comparable interface
• Relationships between classes (dependency, aggregation, inheritance)
6. Algorithms
• Common loop algorithms (sum and average value, counting matches, finding the first match, prompting until a match is found, maximum and minimum, comparing adjacent values) • Common array algorithms (filling, sum and average value, maximum and minimum, element separators, linear search, removing an element, inserting an element, swapping elements, copying arrays, reading input)
• Random numbers and simulations: generating random numbers, the monte Carlo method • Recursion, the efficiency of recursion
7. Other topics
• Method (signature, overloading, and pass by value/reference, recursive programing) • Polymorphism (introduced by abstract class, interface, and generic programming) • GUI and event-driven programming
• Applied programming (threading, socket, and exception handling)
No comments:
Post a Comment