+ All Categories
Home > Documents > Introduction To Object-Oriented Programming. Object-Oriented Programming Class: Code that defines...

Introduction To Object-Oriented Programming. Object-Oriented Programming Class: Code that defines...

Date post: 25-Dec-2015
Category:
Upload: erin-clark
View: 252 times
Download: 7 times
Share this document with a friend
Popular Tags:
29
Introduction To Object-Oriented Programming
Transcript

Introduction To Object-Oriented Programming

Object-Oriented Programming

• Class: Code that defines the behavior of a Java programming element called an object

• Object: An entity that has both state and behavior

• State: Any data that the object might be keeping track of

• Behavior: Actions that the object can perform

Object-Oriented Programming

The Difference Between Class and Object• Class – A plan for an object• Object – An instance of a class

• Blueprint – A plan for a house• House – An implementation of a blueprint

Object-Oriented Programming

The Difference Between Class and Object• Class – A plan for an object• Object – An instance of a class– When an object is created, Java sets aside

computer memory sufficient to hold the data stored by the object.

– Each instance of a class has its own data independent of the data used by other instances of the same class

Object-Oriented Programming

Understanding Static Methods• You do not always have to create an instance

of a class to use the methods of a class.

Object-Oriented Programming

Understanding Static Methods

public class HelloApp{ public static void main (String [] args) { System.out.println ("Hello, World!"); }}

• Static can call the method without first creating an instance of the class. Static methods are called from classes, not from objects.

Object-Oriented Programming

Understanding Static Methods

public class HelloApp{ public static void main (String [] args) { System.out.println ("Hello, World!"); }}

• Java does not create an instance of the application class. Instead, it calls the program’s static main method.

Object-Oriented Programming

Understanding Static Methods – Analogy Time!• A blueprint includes details about systems (electrical, water pipes

etc.) but you can not turn on the hot water without building the house.

• A blueprint can be used to give you dimensions of different rooms. • If a blueprint had a built-in calculator that displays the size of the

living room when a the Living Room Button is pressed it would be like a static method in a class.– You can activate it from the blueprint alone.

• Many java programs are entirely made up of static methods though more advanced programs rely on one or more objects.

Creating An Object From A Class

• Create a variable that provides a name you can use to refer to the object– Use the Keyword new to create an instance of the

class– Assign the resulting object to the variable

ClassName variableName = new ClassName ( );

Creating An Object

Class1 myClass1Object = new Class1 ( ) ;

• Creates an object instance of a class named Class1

• Assigns Class1 to a variable named myClass1Object

Creating An Object

Class1 myClass1Object = new Class1 ( ) ;

• Class name twice?– First time provides a type for the variable. You are saying that the

variable you are creating here can be used to hold objects created from the Class1 class

– Second time you are creating an object from the class.• new tells Java to create an object. The class name provides

the name of the class to use to create the object• = is an assignment operator

– Says to take the object created by the new keyword and assigns it to the variable.

Creating An Object

Class1 myClass1Object = new Class1 ( ) ;

• This statement accomplishes 3 things:1. Creates a variable named myClass1Object that

can hold objects created from the Class1 class.

Creating An Object

Class1 myClass1Object = new Class1 ( ) ;

• This statement accomplishes 3 things:2. Creates a new object in memory from the Class1

class

Creating An Object

Class1 myClass1Object = new Class1 ( ) ;

• This statement accomplishes 3 things:3. Assigns this newly created object to the

myClass1Object variable. You can now use the myClass1Object variable to refer to the object that was created.

Viewing A Program That Uses An Object

HelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;

myGreeterObject.sayHello ( ) ;}

}

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

public class Greeter{

public void sayHello ( ){

System.out.println (“Hello, World!”) ;}

}

• Java requires that each public class be stored in a separate file with the same name as the class

Viewing A Program That Uses An Object

HelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;myGreeterObject.sayHello ( ) ;

}}

• End-of-line comments explain the functionality of the program and how it works.

Viewing A Program That Uses An Object

HelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;myGreeterObject.sayHello ( ) ;

}}

• Begins the HelloApp2 class with the public class-declaration• Since the public keyword is used, a file named HelloApp2.java must contain this class

Viewing A Program That Uses An Object

HelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;myGreeterObject.sayHello ( ) ;

}}

• A main method is declared as it is in ALL java programs

Viewing A Program That Uses An ObjectHelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;myGreeterObject.sayHello ( ) ;

}}

• The body of the main method creates a variable named myGreeterObject that can hold objects created from the Greeter class.

• Creates a new object using the Greeter class and assigns this object to the myGreeterObject variable

Viewing A Program That Uses An ObjectHelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;myGreeterObject.sayHello ( ) ;

}}

• Calls the myGreeterObject object’s sayHello method (this method in Greeter.java displays “Hello, World!”)

Viewing A Program That Uses An Object

HelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;

myGreeterObject.sayHello ( ) ;}

}

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

public class Greeter{

public void sayHello ( ){

System.out.println (“Hello, World!”) ;}

}

Viewing A Program That Uses An Object

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

public class Greeter{

public void sayHello ( ){

System.out.println (“Hello, World!”) ;}

}

• Starts with end-of-line comments that identify the function of the program

Viewing A Program That Uses An Object

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

public class Greeter{

public void sayHello ( ){

System.out.println (“Hello, World!”) ;}

}

• Declares a public class declaration.• Allows HelloApp2 class to access Greeter class

Viewing A Program That Uses An Object

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

public class Greeter{

public void sayHello ( ){System.out.println (“Hello, World!”) ;}

}

• sayHello method is declared using the public keyword so that it is available to other classes that use the Greeter class.

• void keyword indicates that this method does not provide any data back to the class that calls it. • sayHello provides the identifier for the method

Viewing A Program That Uses An Object

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

public class Greeter{

public void sayHello ( ){

System.out.println (“Hello, World!”) ;}

}

• Body of method consists of one statement. • Displays “Hello, World!” on the console

Viewing A Program That Uses An Object

HelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;

myGreeterObject.sayHello ( ) ;}

}

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

public class Greeter{

public void sayHello ( ){

System.out.println (“Hello, World!”) ;}

}

•Defines a class that knows how to say “Hello, World!”•Creates an object from that class and asks that object to say “Hello, World!”•The application does not know exactly how the Greeter object displays on the console, what it will display, or how it will be displayed

Viewing A Program That Uses An Object

HelloApp2.java

// This application displays a hello message on// the console by creating an instance of the// Greeter class and then calling the Greeter// object’s sayHello method.

public class HelloApp2{

public static void main (String [ ] args){

Greeter myGreeterObject = new Greeter ( ) ;

myGreeterObject.sayHello ( ) ;}

}

Greeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

import javax.swing.JOptionPane;

public class Greeter{

public void sayHello ( ){

JOptionPane.showMessageDialog (null,<<Hello, World!>>, <<Greeter>>,

JOptionPane.INFORMATION_MESSAGE);}

}•Accomplishes the same thing by making the Greeter class to use a Java library class•No changes are required for HelloApp2.java

Importing Java API ClassesGreeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

import javax.swing.JOptionPane;

public class Greeter{

public void sayHello ( ){JOptionPane.showMessageDialog (null,<<Hello, World!>>, <<Greeter>>,JOptionPane.INFORMATION_MESSAGE);}

}

• import keyword to lets the compiler know that the program is using a class that is defined by the Java API

• imported class is called JOptionPane

import trivia:•import statements must appear at the beginning of a class file, even before any class declarations•You can include as many import statements as are necessary to import all the classes used by your program• import javax.swing.*;• This statement can be used to import

all classes from a particular package

Importing Java API ClassesGreeter.java

// This class creates a Greeter Object// that displays a hello message on// the console

import javax.swing.JOptionPane;

public class Greeter{

public void sayHello ( ){JOptionPane.showMessageDialog (null,<<Hello, World!>>, <<Greeter>>,JOptionPane.INFORMATION_MESSAGE);}

}

• The Java API is full of thousands of classes• Java groups classes into manageable groups called packages• JOptionPane is contained within the javax.swing package


Recommended