General Information
- The exam will be posted on Wed, Apr 15, 9 AM (morning), and due the same day,
Wed, Apr 15, at 5 PM (afternoon).
- The exam will be posted similar to a class project. You will write code in an
Eclipse project and submit as usual, except there is no late period submission.
-
We will pick the highest scoring submission for grading purposes. You can submit
as many times as you want before the deadline, but keep in mind you have 8
release tokens. You can release test your code anytime.
- All submissions must be done via the submit server (no e-mail).
- The exam will be graded based on submit server tests (release and secret)
and code inspection (style and requirements).
- About Piazza use during the exam:
- You can only post clarification questions in Piazza. Debugging questions,
why code is not passing a test, are invalid questions to post in Piazza.
-
Use the folder exam2questions to post questions.
-
We will use the folder exam2clarifications to post any clarifications.
Please don't use this folder :)
-
Posting of any kind of code in Piazza, during the exam period, represents
an academic integrity violation and will be reported as such.
-
You cannot answer students' questions; only TAs and instructors can do so.
- You must work by yourself.
- You can use class resources (lecture notes, lecture/lab examples, videos, etc.), but no other resources
(e.g., code from the web).
- Sharing of exams solutions represents an academic integrity violation and will be reported as such.
- Submissions will be checked with cheating detection software.
- Do not wait until close to the deadline to submit your work. Network problems or submit server
overloading are not valid excuses for not submitting your work.
- If you are an ADS student: The time provided timeframe takes into consideration your time allocation.
If you need any other assistance, contact your instructor. Ignore this entry if you don't know
what an ADS is.
- Dear Students: it is in your best interest to complete this work by yourself, and
following the guidelines described above. You need to identify which topics you understand
and which ones you don't, so you can be successful in CMSC132.
Exam Structure
- Short answer questions: This includes for example, multiple
choice and true/false.
- 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 (#1 thru #6) including the following topics:
- Object-Oriented Terminology
- Java Variables and Types
- Expressions and Side Effects
- Java Numeric/String/Logical Operators
- Assignment Operators
- Short Circuiting
- Scanner Class
- System.out.println()
- Conditional Statements
- Blocks and Scoping
- Constants
- Loops (whiles, do whiles, for loops)
- Static methods
- String Class
- Memory Maps/Diagrams - An example of the memory map format can be found at
Sample Memory Map
- Constructors
- Using "this" for classes
- Instance variables
- Static variables
- static and non-static methods
- get/set methods
- toString()
- How to write an equals method for a class
- switch statement
- StringBuffer
- One Dimensional Arrays (of primitives and references)
- Ternary Operator
- Exceptions
- Privacy Leaks
- Copying Objects: Shallow, Reference, Deep Copying
- Abstraction
- Encapsulation
- Pseudocode
- JUnit Testing (how to write a test using assertions)
The exam will NOT cover the following topics:
- Eclipse Debugger, Recursion, Two-Dimensional Arrays, Model View Controller,
ArrayList, Javadoc,Interfaces, Polymorphism, Inheritance, Iterators,
JOptionPane Class (methods used for input and output), Computer Organization,
Packages
Practice Material
Previous semesters' exams can be found at PreviousExams.zip.
A worksheet can be found at Exam2Worksheet.pdf. Notice
that some of the material covered by previous exams and the worksheet might not be part
of this exam. Also, check old exams we posted for your previous exam.
The best way to prepare is to practice problems (e.g., previous exams) and problems you can
come up as you study. The more you practice, the better you will do in the exam. If you just
practice one or two exams, that is probably not enough.