COMP 110 Classes Tabitha Peck M.S. February 20, 2008 MWF 3-3:50 pm Philips 367 1.

Post on 21-Dec-2015

215 views 2 download

Tags:

Transcript of COMP 110 Classes Tabitha Peck M.S. February 20, 2008 MWF 3-3:50 pm Philips 367 1.

COMP 110Classes

Tabitha Peck M.S.

February 20, 2008

MWF 3-3:50 pm

Philips 367

1

Announcements Lab 4 Due Friday

Office Hours - Today after Class Help with loops Help with Lab 4

Jason Jerald

2

Participants Needed for Virtual RealityMotion Perception in Virtual Environments During Head Turns

What you get Learn about programming in a research environment Learn what grad students are doing in computer science Help contribute to improving virtual reality technology Earn real money

The task select which of two presentations you believe contains scene motion 600-1000 trials Earn $.05 for each correct selection - Do the math! Study takes 3-5 Hours

For more info Filling out form is not committing Name Preferred contact (email or phone) Preferred hours

3

Questions?

4

Today in COMP 110

Worksheet Review (quick)

Debugger

Classes

5

Debugger

What is the length?

t h i s i s a s t r i n g

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

7

Classes

wagTail

Terrier

bark

Retriver

beg

Shepard

DogClass

Object

Methods

8

Classes

nextInt

keyboard

next

sc

nextDouble

s

ScannerClass

Object

Methods

9

Classes

getMajor

Jack

calcGpa

Amanda

increaseYear

Spencer

StudentClass

Object

Methods

10

UML Diagram

11

Class Name: Student

Class YearGPAMajorCreditsGPA sum

+ getMajor+ printData+ increaseYear

How: increase year by 1+ calcGPA

How: average grades

UML DiagramClass Name: Student

Class Year (int)GPA (double)Major (String)Credits (int)GPA sum (double)

+ getMajor(): String+ increaseYear(): void+ calcGPA(double grade): void+ printData(): void

12

Class File

Each class in SEPARATE file Create instance of Class in main You will have TWO (or more) files!! Call methods in main You must run your file from main!!!!!!!

13

Create instance of Class in main

public class StudentStats{

public static void main(String[] args){

// instantiating object of type student Student s1 = new Student();

}} Class Object Class

Different NameFrom Class

14

Create Class in Separate File

public class Student{

//everything in your class goes here

} Save as Student.java

15

UML DiagramClass Name: Student

Class Year (int)GPA (double)Major (String)Credits (int)GPA sum (double)

+ getMajor(): String+ increaseYear(): void+ calcGPA(double grade): void+ printData(): void

16

Data (in your class file)

17

public int classYear;private double gpa;public String major;private int credits = 0;private double gpaSum; private - only access variables INSIDE

your class public - access to variables OUTSIDE your

class

Public Variables

Student s1 = new Student();

s1.classYear = 2;

classYear is a variable NOT a method Don’t use ()

18

Private Variables

Variables you do not want a user to manipulate

GPA - calculate GPA in your class Don’t want user to reset the value

19

UML DiagramClass Name: Student

Class Year (int)GPA (double)Major (String)Credits (int)GPA sum (double)

+ getMajor(): String+ increaseYear(): void+ calcGPA(double grade): void+ printData(): void

20

Method getMajor

/*getMajor

Input: none

Return: major*/

public String getMajor()

{ return major;

}

21

Return type

Type String

Calling method getMajor

22

public static void main(String[] args){ Student s1 = new Student(); s1.major = “English”; String m = s1.getMajor(); System.out.print(m);}

UML DiagramClass Name: Student

Class Year (int)GPA (double)Major (String)Credits (int)GPA sum (double)

+ getMajor(): String+ increaseYear(): void+ calcGPA(double grade): void+ printData(): void

23

Method increaseYear/*increaseYearInput: noneDescription: increase student year by oneReturn: none*/

public void increaseYear(){ if (classYear < 4) classYear++;

}

24

Calling method increaseYear

25

public static void main(String[] args){ Student s1 = new Student(); s1.classYear = 2; s1.increaseYear(); // classYear = 3 s1.increaseYear(); // classYear = 4 s1.increaseYear(); // classYear = 4}

UML DiagramClass Name: Student

Class Year (int)GPA (double)Major (String)Credits (int)GPA sum (double)

+ getMajor(): String+ increaseYear(): void+ calcGPA(double grade): void+ printData(): void

26

Method calcGpa/*calcGpaInput: grade(double)Description: update credits and gpaSum

calculate GPAReturn: none*/

public void calcGpa(double grade){ credits++; //increase number of credits gpaSum = gpaSum + grade; gpa = gpaSum / credits;}

27

Calling method calcGpa

28

public static void main(String[] args){ Student s1 = new Student(); s1.calcGpa(3.5); //gpa = 3.5 s1.calcGpa(2.4); // gpa = 2.95 }

UML DiagramClass Name: Student

Class Year (int)GPA (double)Major (String)Credits (int)GPA sum (double)

+ getMajor(): String+ increaseYear(): void+ calcGPA(double grade1, double grade2): void+ printData(): void

29

Method printData/*printDataInput: noeDescription: print instance variablesReturn: none*/

public void printData(){DecimalFormat df = new DecimalFormat("0.00"); System.out.print("Major: " + major + ”\nClass year: " + classYear + ”\nGPA: " + df.format(gpa));

}

30

Code on Website

Open the code

Save the code

Understand the code

Run the code

31

Friday

Lab 5

Classes

32