Classes and Objects
Adapted from
Java Software Solutions
for AP* Computer Science A
2nd Edition
by John Lewis, William Loftus, and Cara Cocking
Java Software Solutions is published by Addison-Wesley
Presentation slides are copyright 2006 by John Lewis, William Loftus, and Cara Cocking. All rights reserved.
Instructors using the textbook may use and modify these slides for pedagogical purposes.
*AP is a registered trademark of The College Entrance Examination Board which was not involved in the production of, and does not endorse, this product.
1
Writing Classes
2
Objects
3
Classes
4
Classes
5
Classes
ie. public class Coin needs to be save to a file called Coin.java
6
Java Compiler and JVM
7
Errors && Exceptions
8
Garbage Collection
9
Classes
10
int x, y;
char ch;
Data declarations
Method declarations
public class Coins {
Data Scope
11
Instance Data
12
Constructors Revisited
Class Design
public class Person
{
private double myHeight;
private double myWeight;
private String myHair;
public Person( double height, double weight, String hair )
{
myHeight = height;
myWeight = weight;
myHair = hair;
}
// ...
}
14
Class Header
Instance Variables
Constructor
Initialize Instance Variables
complete Person Class Ex. 94 [slide 5], 96, 97
Local Data
15
Method Decomposition
16
Encapsulation
17
Encapsulation
18
Encapsulation
19
Client
Methods
Data
Visibility Modifiers
20
Visibility Modifiers
21
Visibility Modifiers
22
Preconditions and Postconditions
23
Other Resources
"Difference between Abstraction and Encapsulation in Java - OOPS." Java67 Java Programming tutorials and Interview Questions.
<http://www.java67.com/2012/08/difference-between-abstraction-and-encapsulation-java-oops.html>
24