Things you should know for the Fall 2007 CS211 Midterm (and really Quiz 2 also).
Basic Unix commands
Basic Java- Be able to understand and use
- if statements
- for loops
- while loops
- new for loop ("foreach")
- switch statements
- Classes and Objects
- What is the difference between a Class and an Object
- Arrays
- Know how to define an array
- Know how to assign primitive variable to the array
- Know how to assign objects (object references) to the array
- Know how to access values in the array
- Know how to determine the length of the array
- Modifiers
- public, private, protected, no modifier and how they effect methods and class variables
- static
- what is a static method, what is a static variable? What do these
mean.. if I give you an example with static methods/variables being
called can you tell me which is a error? what the values are?
- Exceptions
- What is the check or specify requirement?
- Can you write code using each?
- RuntimeException is Unchecked.
- Exception is checked
- Why do I use one or the other?
- What is a finally block and how do you use it
- What is the throws clause and how do you use it
- Know how to write your own Exception class
- Interfaces
- What is an interface
- Know how to create an Interface
- Know how to implement an interface
- Big O
- Determine what the order of an algorithm is
- Determine what the best/worst/average case is for an algorithm
- Know (or be able to figure out) which order is faster than another
- Recursion
- Given a recurrence relationship be able to write the recursive method that implements it
- Given a recursive method, explain what it does and be able to "walk through it" and determine what it outputs.
- Identify the base case/stopping case of a recursive program
- Be able to write a simple recursive method
- Understand a List backed by an Array
- How is it created
- Add or Insert an item
- Remove an items
- Remove all items
- From Labs:
- Know how to use the StringTokenizer class (I will give you Javadocs)
- Know how to use the Scanner class (I will give you Javadocs)
- Know how to use printf to format output Strings (I will give you Javadocs)
Software Engineering
- What is the Waterfall model?
- What are the 5 steps in the model: Requirements, Design, Coding, Testing, Deployment (production)
- Can you write a one sentence description of what you do during each one?
NOT FOR QUIZ 2 -- Learn for the midterm though!!
- Understand variable references and how they work
- Linked Lists --- If we get to them in class.