General Information
- Date: Thu, Dec 12, 2019
- Time: 4 pm - 6 pm
- You need to present your student id card to take the exam.
- Location: TYD
0130 This is the location for my cmsc131 030X sections (NOT FRESHMEN CONNECTION).
- Duration: 120 minutes
- Closed-book, Closed-notebooks, No Computers/Calculators.
- Use a pencil/mechanical pencil (no pen) to answer the exam.
- Please take a look at the general exam rules available at
Exam Rules.
- After you taken the exam, do not discuss
anything associated with the exam with other students that have
not taken the exam yet.
- Posting any information in Piazza about the exam after taking it
is considered an academic integrity violation.
- Please Do not remove the exam’s staple. Removing it
will interfere with the scanning process (even if you staple
the exam again).
Exam Structure
- Short answer questions: This includes for example, multiple
choice, true/false, and fill-in-the-blank type questions.
- Code analysis questions: We will give a short segment of code and
you may be asked to identify syntax and logical errors, generate code
output, etc.
- Code Writing: Write a program/code snippets to solve a given
problem. You should be prepared to give a complete program/class, but we may also
ask you to provide just a single method or a code fragment.
Topics
The exam will include all the material covered in discussion session (lab),
lecture, quizzes, exercises, and projects including the following topics:
- Java Numeric/String/Logical Operators
- Scanner Class (be familiar with nextInt(), nextDouble(), next())
- Blocks and Scoping
- Constants
- Loops
- String Class
- Constructors
- Access Specifiers
- Instance Variables
- Static Variables
- Instance Methods
- Static Methods
- equals Method
- toString Method
- get/set Methods
- JOptionPane Class
- Memory Maps (followed the format described at Memory Map Format
- Call Stack
- Parameter Passing
- Privacy Leaks
- "this" Keyword
- Visibility
- Encapsulation
- Exception handling
- StringBuffer
- Mutability
- One and Two Dimensional Arrays
- Reference, Shallow, Deep Copying
- Ragged Arrays
- Wrappers
- Stack
- ArrayList (be familar with methods add, get, isEmpty, indexOf, remove(int index), size())
- Switch Statement
- Interfaces
- Comparable Interface
- Sorting Data Using Collections.sort()
- Polymorphism
- Method Overloading/Overriding
- Iterators
- getClass(), instanceof
- for-each loops
- Recursion
- Integer.parseInt(), Double.parseDouble()
- String Class Methods: toLowerCase, toUpperCase, length()
The exam will NOT cover the following topics:
- Computer Organization, Inheritance (extending other classes and concepts overviewed in class),
JUnit, Eclipse, Debugger, Javadoc, Java packages
Practice Material