head first java chapter 8

17
Head First Java Chapter 8 Tom Henricksen

Upload: tom-henricksen

Post on 17-Feb-2017

124 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Head First Java Chapter 8

Head First Java Chapter 8Tom Henricksen

Page 2: Head First Java Chapter 8

Abstract Classabstract class Canine extends Animal {

public void roam() {}

}

Dog class extends Canine {

Page 3: Head First Java Chapter 8

Abstract vs Concrete● Abstract

○ Canine canine = new Canine();

● Concrete

○ Dog dog = new Dog();

Page 4: Head First Java Chapter 8

Abstract methods● No body

● Must override

public abstract void eat();

Page 5: Head First Java Chapter 8

java.lang.Object● Extend Object

● Basic methods

● Can instantiate

○ Object o = new Object();

Page 6: Head First Java Chapter 8

Object overuseArrayList<Object> list = new ArrayList<Object>();

list.add(dog);

Dog dog2 = list.get(0);

Page 7: Head First Java Chapter 8

Method calls● Reference type

○ Dog dog = new Dog();

○ Object o = dog;

○ o.bark();

Page 8: Head First Java Chapter 8

Use your methods● Object methods

● Polymorphism

○ Snowboard s = new Snowboar();

○ Object o = s;

Page 9: Head First Java Chapter 8

Casting● Cast back

○ Dog d = (Dog)o;

○ d.bark();

● Instanceof

Page 10: Head First Java Chapter 8

Interface● Similar to an abstract class

○ public interface Pet {...}

○ public Dog implements Pet {...}

Page 11: Head First Java Chapter 8

Interface methods● No body

○ void play();

● Must implement

Page 12: Head First Java Chapter 8

Invoking the Superclassvoid runReport() {

super.runReport();

}

Page 13: Head First Java Chapter 8

Assignment

● Exercise 1

● Exercise 2

● Exercise 3

Page 14: Head First Java Chapter 8

Interfaces

Page 15: Head First Java Chapter 8

Interfaces

Page 16: Head First Java Chapter 8

Interfaces

Page 17: Head First Java Chapter 8

Super