final review. 2 final details monday, december 11 th 7:00pm – 10:00pm hcc 1325
Post on 18-Dec-2015
217 views
TRANSCRIPT
3
Sections Covered - Detailed View 1.1-1.2, 1.4-1.6 2.1-2.6 3.1-3.3, 3.6-3.8 [covered 3.4, 3.5 in class] 4.1-4.4 [covered 4.5 in class] 5.1-5.5, 5.7-5.8 [(basically) covered 5.6 in class] 6.1-6.5, 6.7, 6.8 [covered 6.9 in class] 7.1-7.2, 7.6-7.7 [covered 7.4 in class] 8.1-8.5 9.1-9.5 10.1-10.6 11.1-11.3 some parts of 12 covered in class notes
5
Other Topics (from before midterm) Running time / Big O notation Working with references handout
including null/this Merge sort Command line arguments printf
6
Other Topics (after midterm)
More detailed treatment of some topics polymorphism (e.g. covered Collections) file output (e.g. covered buffers and generic
Writers) File input
Call Stack Scanning tokens Regular Expressions
7
Chapter 1
Computer processing The Java Programming Language Program Development Object-Oriented Programming
(very basic)
8
Chapter 2
Character Strings Variables and Assignment Primitive Data Types Expressions Data Conversion Interactive Programs
9
Chapter 3
Creating Objects The String Class Packages Formatting Output
(plus more detailed coverage of printf) Enumerated Types Wrapper Classes
11
Chapter 5
The if Statement and Conditions Other Conditional Statements Comparing Data The while Statement Other Repetition Statements
12
Chapter 6
Software Development Activities Identifying Classes and Objects Static Variables and Methods Class Relationships Interfaces Method Design Testing
(covered the same material in class)
14
Chapter 8
Creating subclasses Overriding methods Class hierarchies Inheritance and visibility Designing for inheritance
15
Chapter 9
Polymorphism polymorphic references through inheritance through interfaces
Searching linear search binary search
Sorting insertion sort selection sort merge sort
18
Running Time – Big-O
For a parameter n… e.g. the length of a string or size of an array
… count the number of steps performed… loop through n elements = n steps loop inside a loop = n2 steps
Ignore constants… coefficients… 3n + 2 steps = O(n) n2 /2 steps = O(n2) “cutting problem in half at each step” = O(log n)
19
Working with References
null reference Object variable not assigned anything When does this cause an exception?
this reference When does this simplify code?
20
File I/O
Where do the exceptions happen? How do we handle them?
Why do we want to buffer? How do we buffer? Using Scanner
with default tokens with defined tokens
21
Regular Expressions
Given regular expression yes/no matching questions give informal description
Given informal description write regular expression pass appropriately to Scanner
22
What Kind of Questions?
Look at the exercises in the text finding errors in code finding differences in code explaining/defining concepts predicting output of code writing methods or classes specifying/justifying design from requirements
23
What Kind of Questions?
Similar format for lecture material e.g. specify running time e.g. find null reference problem
Using regular expressions Predicting tokens parsed Describe call stack
including exceptions explain stack trace
24
It May Be on the Test if…
It is in the text It is in the lecture notes It is something I said in class or wrote on the
blackboard It was part of a lab/assignment
25
What Code Do You Need to Know? Officially: everything as per previous slide Unofficially:
I try to only assume you know “important” methods and classes
… but I decide what is “important” in general… little used methods that occur rarely
in the notes will be given implicitly but you should know enough code to solve
problems without help/look-up
26
Examples
There will be definitions (again) abstract class checked exception final method overridden method
27
Examples
There may be explanations required… Explain why a static method cannot refer to an
instance variable. Give two differences between an abstract class
and an interface.
28
Examples
Draw a UML diagram for a single class hierarchy representing these animals, with abstract classes grouping animal types parrot gorilla horse bat penguin
Add an interface for flyers
29
Examples
Correct the problemsFlyer polly = new Parrot();
Animal koko = new Gorilla();
Gorilla junior = koko.makeOffspring();
polly.layEgg();
30
Examples
Define appropriate classes and public methods for the given requirements. Every salesperson will be assigned a unique ID
number, and a numbered office with a phone. Salespeople will sell vacuum cleaners at a fixed price. When inventory runs out, the top salesperson will be designated employee of the month.
31
Examples
Find the exception in this code, and handle it.public static void main(String[] args)
{
FileWriter fileout = new FileWriter(“names.txt”);
if(fileout!=null)
fileout.write(“John Smith”);
else
System.out.println(“No name written to file”);
}
32
Examples
Find the exception in this code, and handle it.public static void main(String[] args)
{
Student s = new Student(4533453,”tsmith”);
String fname = s.getFirstName();
System.out.println(fname);
}
33
Examples
Given this information in file.txt:
7 | 5 | 5p ,| 4 Write the code that will print these tokens to
the screen using a Scanner/delimiter: “7 | 5 | 5” and “ , | 4” “7 | “ and “ | “ and “p ,| 4”
34
Solution
Scanner filein = new Scanner(
new File(“file.txt”)
).useDelimiter(“p”);
while(filein.hasNext())
{
System.out.println(filein.next());
}
“5”
35
Examples
Yes or no expression matching [1-7]*a? 43 (17)+(17a)? 17a [abc][def](di)? bed [123]+(45)?a* 12312345aaaa [ab][bc][cde]* abcde [A-C]DEF? ABCDE [truck].[stop]+ trstopstop
yes
yes
yes
no
no
yes
no
36
Examples
Describe the strings matching the expressions (cat)+ [cat][cat] cat? [ca]?t* (c?a+)t? [c-t]a?[c-t]*
37
Examples
What is the value in variable temp after:int temp = 30;String stemp = temp + “12”;temp = temp + Integer.parseInt(stemp);
Again:Collection<Integer> l = new
ArrayList<Integer>; int temp = 40;l.add(40);temp = l.size();
39
Examples
What is wrong with this? How can it be corrected?
int count=1,max=0;
while(count=max)
{
System.out.println(count);
count-=2;
}
40
Examples
A LinkedList implements Collection Write a method that adds every word in the
sentence “This is a sentence” to a LinkedList, then prints the size.
42
Examples
Write a class NamedArrayList that extends ArrayList by adding a name for the array list in the first position.
43
Examples
What is wrong with these declarations:
char[] chars = {“d”, “a”, “b”}; String[] = new String[5]; Scanner[] sc = new Scanner(5);