COMP 14 Introduction to Programming - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

COMP 14 Introduction to Programming

Description:

So far, we have added methods to the main class ... Demonstrate flow through different methods with the debugger. Visibility Modifiers ... – PowerPoint PPT presentation

Number of Views:13
Avg rating:3.0/5.0
Slides: 21
Provided by: miguela8
Category:

less

Transcript and Presenter's Notes

Title: COMP 14 Introduction to Programming


1
COMP 14Introduction to Programming
  • Miguel A. Otaduy
  • May 28, 2004

2
Today
  • Defining classes, using objects
  • public, private, static
  • Assignment operator and objects
  • jGRASP projects, multiple files, Java archives

3
Multiple Classes
  • So far, we have added methods to the main class
  • Classes extend the concept of data types data
    operations
  • Define new classes and instantiate objects

4
Multiple Classes
  • Concept Basketball team
  • players (objects of class Player)
  • coach (object of class Coach)
  • games
  • Define each class in one file, and instantiate
    objects in other classes or in the main method

5
Basketball.java
  • Create main class Basketball
  • Define Player class
  • player name
  • year
  • operations

6
Multiple files
  • Good style 1 class per file
  • Store all files in 1 directory
  • Create jGRASP project (.gpj)

7
BasketballProject.gpj
  • Example of project creation

8
Multiple Objects
  • A class has 1 single definition
  • We can instantiate multiple objects of 1 class
  • Each object keeps its own copy of the data
    members
  • Objects are accessed using reference variables
  • To perform operations on objects

referenceVariable.method (parameter1, parameter2,
)
9
Basketball.java
  • Instantiate multiple Player objects
  • Call methods of the Player objects from
    Basketball.main()
  • Demonstrate flow through different methods with
    the debugger

10
Visibility Modifiersprivate and public
  • Public
  • For members that should be accessible outside the
    class (i.e. from other classes or the main
    method)
  • Usually employed with methods
  • Private
  • For members that should not be accessed outside
    the class
  • Usually employed with data members
  • Also for methods that are only used internally
  • Typically, data members are declared as private,
    so we need methods to set and get data values

11
Player.java
  • Make data members private
  • Make methods public
  • Demonstrate accessibility from Basketball.main()

12
Assignment Operator
  • Assignment expressions that involve reference
    variables do not copy object data!!
  • In order to copy object data, we need additional
    methods

Player player1 new Player(Felton) Player
player2 new Player() player2 player1
//player2 points to the same obj.
public void Player.copy(Player otherPlayer)
13
Player.java
  • Write Player.copy()

14
Visibility Modifiersstatic
  • static data members
  • Data related to a class that does not need to be
    defined for each object

public class Player static final int FRESHMAN
1 static final int SOPHOMORE 2 private
int year
15
Visibility Modifiersstatic
  • static methods
  • Operations that do not use object-dependent data
  • They can only use static data members!! (besides
    local variables)

public static int factorial(int x)
static BufferedReader keyboard public static
void main() String strkeyboard.readLine()

16
Visibility Modifiersstatic
  • To access static data members and methods from
    outside the class
  • To access non-static data members and methods
    from outside the class
  • In general, from inside the class, no need to
    write class name or reference variable.

double res Math.pow(2.0, 3.0) //ClassName.meth
od()
player1.printInfo() //referenceVariable.method()

17
Player.java
  • Add static data members and methods

18
The toString Method
  • Special method in Java classes
  • Produces a String object based on the current
    object, suitable for printing
  • Mapped to the '' operator (concatenation)
  • Also called when the object is a parameter in a
    print() or println() method
  • There is a default toString method, but it's
    better if we write our own

19
Player.java
  • Write Player.toString()

20
To do
  • Homework 5 (due Wednesday night)
  • Dont wait till Tuesday!!
  • Homework 6 is going to be rather long
  • Read ch. 9
Write a Comment
User Comments (0)
About PowerShow.com