Test 2 Review Guide

Test date: Wednesday, April 1, 2015
Test location: normal lecture hall (you MUST go to your assigned section)
Test duration: 50 minutes (for 1110 and 1111)
Test format: writing on paper; bring pen/pencil (and nothing else)
Review session: Tuesday, March 31, 7:30-9:00 PM in Wilson 402 with breakout sessions in Wilson 306 afterwards

Review Sheet

Everything covered up to this point is still in scope! For example, it’s hard to ask a CSV question without having you write a loop! So just because a previous chapter isn’t mentioned, we still expect you to know loops, if statements, etc.

  • Chapter 4.10
  • Chapter 5
  • Chapter 6.1-6.5, 6.7
  • Chapter 7.1-7.9, 7.13
  • Chapter 8.1-8.4

Major Topics

File I/O

  • Know how to read lines from a file and how to split a line on a comma into a String array
  • Know the difference of reading a local file vs. a file from the Internet

Arrays / ArrayLists

  • Know how to initialize and use arrays
  • Know how an ArrayList is different than an array
  • Know how to use an ArrayList, along with some of the basic methods (add(), remove(), get(), etc.)


  • You WILL be asked to write methods on this test
  • Know the parts of the method signature and what each part means/does
  • Know the difference between a void return and a method that returns a data type of some kind (and when you would use each)
  • Know how to read and evaluate a recursive method


  • Know what makes a class have state and behavior
  • Know what fields and methods are
  • Know in general why we make fields private and methods public

Designing Classes

  • Know how to read a problem description and find the classes/fields/methods
  • Be able to diagram the classes that you identify

Programming Challenges

  • Reading any CSV file
  • Chapter 5 - 4, 5, 6, 7, 8, 15
  • Chapter 6 - 1, 2, 7
  • Chapter 8 - 3, 5, 6, 7, 12 (no GUIs for any of these)

Things to do to study for the test

No. 1 - Practice your coding without Eclipse!

Let’s be honest - we’ve done a lot of coding in this class so far because that’s really the first step. You’ve got to learn the basics. So, yes, there are going to be coding questions on the test. And, no, you won’t have Eclipse to use!

Are we going to be overly concerned about exact syntax? No, not really, because right now you’re still learning and Eclipse is helping you out a lot. What we’re after is if you’re starting to figure out how to think computationally - can you look at a problem and then figure out what the proper algorithm is to solve that problem using a program.

If it’s really off will we still take off points? Yes, we will, because we still expect you to know that a semicolon comes at the end of each line, etc.

And always remember: a question with at least some reasonable attempt at an answer is always better than a question that’s left blank!

No. 1a - Reading programs!

Writing programs is good, but reading them and understanding them is good too! Be able to trace through code and know what’s happening as you’re working through it!

No. 2 - Review the slides!

If we talked about it in class, then we think it’s important. If we skipped something in the book, then there’s a very good chance we’re not going to ask about it. We only get a limited amount of time to ask you questions on the test!

No. 3 - Listen to the podcasts!

If there’s a topic that has been really tough for you, go back and re-listen to the lecture!

No. 4 - Review the labs and homework assignments!

Go back and look at the labs and homework assignments. I think you’ll get a good idea of what types of questions we like to ask.