• a constant
Integer.MAX_VALUE • holds the largest value for the int
data type
• 231 –1
• a constant
Integer.MIN_VALUE • holds the smallest value for the int
data type
• -231
variable is connected to the whole
static
•
class, not individual objects
• all variables of the class share this
one variable
variables •
•
with the keyword final it is used to
create a constant
also called: class variables
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
final • keyword used to make a variable a
constant
• resizable array
• uses the List interface
ArrayList
• only holds objects
• built in methods for inserting, delet-
ing, etc
• Can use the for-each loop or regu-
lar for-loop
int x = 7;
x = x /2; •
•
answer: 3
Remember that with integer divi-
sion the decimal is cut off, no
rounding happens
what does x equal?
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
String s = “turkey”; • answer: urk
• remember:
• Strings start at 0
what is: • substring stops at the second
number –1
0 1 2 3 4 5
[Link](1, 4); t u r k e y
start stop
4-1
int x = 3 % 7;
• answer: 3
• 7 divides into 3 zero times, leaving
3 as a remainder
what is x?
Which is correct?
• answer: B
A. int x = (double) 4.5; • Since 4.5 is a double you must use
B. int x = (int) 4.5; a numeric cast to change it to an int.
C. int x = 4.5;
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
String w = “ans: “+ 4 + 5;
• answer: ans 45
• Since the first thing after the = is a
String, java uses concatenation
What is w? • so it changes 4 to a String, puts it
on the end of ans , then changes 5
to a String and puts it at the end
String • What Interface does it implement?
What methods are included?
concatenation
•
What are: called escape sequences
A) \\
•
• used for some characters that can-
not be typed\displayed easily
B) \n A) \
B) new line
C) “
C) \”
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
• Java doesn’t always test both
Short circuit halves of a Boolean operation—
sometimes it uses a shortcut
&& (and): if the first part is false,
evaluation
•
the whole thing will be false, so it
never tests the second part
• || (or): if the first part is true, the
whole thing will be true, so it never
tests the second part
• answer:
1234
What is output? 24
3
4
for (int a = 1; a < 5; a++){
for (int b = a; b < 5; b += a) • Be careful! The first time a = 1, so
[Link](b); the second loop counts by 1. Next
[Link](); time a = 2, so it counts by 2, etc.
} • For these problems [ay special at-
tention to where they start, where
they stop and what they count by.
Why is it best to • == only does a primitive test for
equality
use .equals instead • in objects this means it is testing the
memory address, not the values
of == with objects? •
stored in the object
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
• In the same class, many methods
with the same name
overloading
• Java tells them apart using the
signature
• Signature: the number a type of
parameters
• CANNOT use the methods return
type to tell them apart
Integer •
•
•
Wrapper class that holds ints
used to store ints in an ArrayList
holds the MAX_VALUE and
MIN_VALUE
simple • array can hold primitive types or
class types
all elements are of the same type
arrays
•
• not resizable
• Use the regular for-loop
• Use .length to find the size
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
new •
•
creates a reference to an object in
memory
calls the constructor in the object
• builds an object in memory
• sets up all the variables in the
objects
constructor •
•
•
has the same name as the class
NEVER has a return type or void
can overload the constructor—Java
tells them apart by the number and
type of the parameters
void • means a method does not return a
value
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
• An array of integers
• If this is a free response question
public int [] doStuff() the first thing you should do is:
int [] list = new int [10];
What type does this method
return? return list;
• This is usually worth 1/2 to 1 point!
What is returned by the call
mystery(5)?
public static int mystery(int num){
if (num ==0)
• answer: 15
return 0;
• mystery(3)? 6
• mystery(2)? 3
return num + mystery(num - 1);
}
How about mystery (3)?
mystery(2)?
int list [] = { 5, 7, 2, 4};
for (int i = 0; i < [Link]; i++)
list [i] = list[i] * 2;
• answer:
What is stored in list 0 1 2 3
after this loop? 10 14 4 8
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
null •
•
What Interface does it implement?
What methods are included?
int stuff [] [] = new int [3][5];
• 2-D arrays are row-major—> the
How many columns? rows come first.
• rows = 3, columns = 5
How many rows?
Write the for loops to initialize this to: for(int r = 0; r < [Link]; r++)
01234 for (int c = 0; c < stuff[r].length; c++)
stuff[r][c] = r + c;
12345
23456
public • Public means the variable or
method can be accessed outside the
vs. •
class, private means it cannot
On the AP exam all variables in a
private
class are expected to be private
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
// • Create a one-line comment
/* */ •
•
Makes a comment
Can block out several lines of code
• answer: (x == 5 || y>0)
• This is an example of DeMorgan’s
Simplify:
Law
• To simplify you distribute the ! and
take the opposite of each operation
• Be careful! The opposite of > is <=
!(x != 5 && y <=0) • Review this - there are always a
few of these in the MC section - this
should be a fast and easy question
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
What is • answer: 13
11012 • You should know binary, octal and
hex. They are in the AP course
description.
in base 10?
int maxIndex = 0;
int x[];
for (int i = 1; i < [Link]; i++){
if (x[maxIndex] < x[i])
maxIndex = i;
Assume this array has been }
initialized. Write a loop to find
the index of the largest • Why do we set maxIndex to 0
before the loop?
element. • Why does the loop start at 1?
static •
•
method connected to the class, not
an object
ex: [Link]
You do not declare a variable of
methods
•
Math type to get to the random
method
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
interface
• Used to define a set of behavior for
a group of classes
•
• example: List interface, Comparable
interface
How are abstract • Interfaces cannot have variables or
code in methods. They can only
have constants and a list of
classes different •
abstract methods
Abstract classes can have some
than interfaces? code along with the abstract
methods
You have an abstract
class called first. A • second must include code for all of
the abstract methods in first.
child class called • If second does not have code for all
the abstract methods in first, second
second extends first. •
is also abstract
The abstract methods are like a to-
What must be true for do list, once a child class has code
for all the abstract methods, the
second to NOT be abstraction is lifted
abstract?
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
• Used to show a class uses an
implements •
interface
example:
public class Binary implements Comparable{
Bug b1 = null;
[Link](); • Since b1 is null, it does not point to
a location in memory. We cannot
use any methods on a null object.
• throws a NullPointerException,
What’s wrong?
What is output if x = 7;
• answer: A
if( x % 2 ==1) • % finds the remainder
• %2 finds if a number is even or
[Link](“A”); odd
else
[Link](“B”);
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
• Connects a child class to it’s parent
extends
• The child class inherits all the
features of the parent class
• Example:
public class RockMonster extends Monster
• calls the constructor of the parent
super •
class
must be the first line in the child
class’ constructor
• A class set up to be a parent to a
subclass
can have abstract methods, these
abstract
•
are methods with no code
• an abstract class cannot be
instantiated (cannot create an
class •
object from it)
If the child class does not
implement all the abstract methods
it is also abstract
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA
• template for a object
• can include variables and methods
class
Hints:
• According to the AP Java subset all
variables should be private!
• On some old free response ques-
tions there has been a 1/2 deduc-
tion for not using private
• All classes are children of this class
• has a toString and equals method
• toString returns the variable’s
Object
memory address
• equals tests if two variables
memory addresses are the
same
• the equals and toString methods are
usually rewritten in child classes
object
• a variable of a class type
• can hold data (variables) and have
methods
AP Computer Science * Mrs. Dovi * Patrick Henry High School * Ashland VA