03-Object-oriented programming in java - Carnegie Mellon University
[Pages:47]Principles of Software Construction: Objects, Design, and Concurrency
Object-Oriented Programming in Java
Josh Bloch Charlie Garrod
School of Computer Science
15-214
1
Administrivia
? First homework due this Thursday, 11:59 PM
15-214
2
Key concepts from Tuesday
? Bipartite type system ? primitives & object refs
? Single implementation inheritance ? Multiple interface inheritance
? Easiest output ? println , printf ? Easiest input ? Command line args, Scanner ? Collections framework is powerful & easy to use
15-214
3
Collections usage example 3
Unfinished business from last lecture
Print index of first occurrence of each word
class Index { public static void main(String[] args) { Map index = new TreeMap();
// Iterate backwards so first occurrence wins for (int i = args.length - 1; i >= 0; i--) {
index.put(args[i], i); } System.out.println(index); } }
$ java Index if it is to be it is up to me to do it {be=4, do=11, if=0, is=2, it=1, me=9, to=3, up=7}
15-214
4
Outline
I. Object-oriented programming basics II. Information hiding III. Exceptions
15-214
5
Objects
? An object is a bundle of state and behavior ? State ? the data contained in the object
? In Java, these are the fields of the object
? Behavior ? the actions supported by the object
? In Java, these are called methods ? Method is just OO-speak for function ? invoke a method = call a function
15-214
6
Classes
? Every object has a class
? A class defines methods and fields ? Methods and fields collectively known as members
? Class defines both type and implementation
? type where the object can be used ? implementation how the object does things
? Loosely speaking, the methods of a class are its Application Programming Interface (API)
? Defines how users interact with instances
15-214
7
Class example ? complex numbers
class Complex { private double re; // Real Part private double im; // Imaginary Part
public Complex(double re, double im) { this.re = re; this.im = im;
}
public double realPart()
{ return re; }
public double imaginaryPart() { return im; }
public double r()
{ return Math.sqrt(re * re + im * im); }
public double theta()
{ return Math.atan(im / re); }
public Complex add(Complex c) { return new Complex(re + c.re, im + c.im);
} public Complex subtract(Complex c) { ... } public Complex multiply(Complex c) { ... } public Complex divide(Complex c) { ... } }
15-214
8
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- leccture 3 object oriented programming in java
- java 3 object oriented programming programmer books
- object oriented programming kandula yellaswamy
- object oriented programming in java southern adventist university
- lecture notes on object oriented programming through java iare
- object oriented programming oop a review colorado state university
- java object oriented programming example pdf webinar proposals
- introduction to object oriented programming semantic scholar
- introduction to object oriented programming exceptions
- object oriented programming basics with java university of san francisco
Related searches
- object oriented programming in matlab
- matlab object oriented programming pdf
- object oriented programming tutorial pdf
- object oriented programming book pdf
- object oriented programming c pdf
- object oriented programming 2 pdf
- object oriented programming pdf download
- object oriented programming c book
- object oriented programming java examples
- object oriented programming language pdf
- object oriented programming python pdf
- c object oriented programming examples