comp15111: introduction to architecturesyllabus.cs.manchester.ac.uk/.../lectures/stack2.pdf ·...
Post on 09-May-2020
5 Views
Preview:
TRANSCRIPT
COMP15111: Introduction to ArchitectureLecture 10: Methods – Parameters and Variables
Dr. Javier Navaridas
School of Computer Science, University of Manchester
Autumn 2016
COMP15111 Lecture 10 1/33
Lecture 10: You are here
An Example Java Program
Lifespan of Variables in a Running Java Program
COMP15111 Lecture 10 An Example Java Program 2/33
An example Java Program – AgeHistory2
static int presentDay, presentMonth, presentYear;
void printAgeHistory (int person, birthDay, birthMonth, birthYear)int someYear, ageInSomeYear1;
System.out.println(...);... birthYear ... presentYear ... someYear ...
void main(String[] args)int birthDay1, birthMonth1, birthYear1, ...... = Integer.parseInt(args[...]);printAgeHistory(...);
void println(String string)print(string);
write(newline);
void print(String string)write(nextchar);
COMP15111 Lecture 10 An Example Java Program 4/33
An example Java Program – AgeHistory2
static int presentDay, presentMonth, presentYear;
void printAgeHistory (int person, birthDay, birthMonth, birthYear)int someYear, ageInSomeYear1;
System.out.println(...);... birthYear ... presentYear ... someYear ...
void main(String[] args)int birthDay1, birthMonth1, birthYear1, ...... = Integer.parseInt(args[...]);printAgeHistory(...);
void println(String string)print(string);
write(newline);
void print(String string)write(nextchar);
COMP15111 Lecture 10 An Example Java Program 4/33
An example Java Program – AgeHistory2
static int presentDay, presentMonth, presentYear;
void printAgeHistory (int person, birthDay, birthMonth, birthYear)int someYear, ageInSomeYear1;
System.out.println(...);... birthYear ... presentYear ... someYear ...
void main(String[] args)int birthDay1, birthMonth1, birthYear1, ...... = Integer.parseInt(args[...]);printAgeHistory(...);
void println(String string)print(string);
write(newline);
void print(String string)write(nextchar);
COMP15111 Lecture 10 An Example Java Program 4/33
An example Java Program – AgeHistory2
static int presentDay, presentMonth, presentYear;
void printAgeHistory (int person, birthDay, birthMonth, birthYear)int someYear, ageInSomeYear1;
System.out.println(...);... birthYear ... presentYear ... someYear ...
void main(String[] args)int birthDay1, birthMonth1, birthYear1, ...... = Integer.parseInt(args[...]);printAgeHistory(...);
void println(String string)print(string);
write(newline);
void print(String string)write(nextchar);
COMP15111 Lecture 10 An Example Java Program 4/33
An example Java Program – AgeHistory2
static int presentDay, presentMonth, presentYear;
void printAgeHistory (int person, birthDay, birthMonth, birthYear)int someYear, ageInSomeYear1;
System.out.println(...);... birthYear ... presentYear ... someYear ...
void main(String[] args)int birthDay1, birthMonth1, birthYear1, ...... = Integer.parseInt(args[...]);printAgeHistory(...);
void println(String string)print(string);
write(newline);
void print(String string)write(nextchar);
COMP15111 Lecture 10 An Example Java Program 4/33
Lecture 10: You are here
An Example Java Program
Lifespan of Variables in a Running Java Program
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 5/33
Running AgeHistory2
birthYear1 etc.
presentYear etc.
main starts
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 7/33
Running AgeHistory2
intString etc.
birthYear1 etc.
presentYear etc.
main calls parseInt (*6)
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 9/33
Running AgeHistory2
birthYear1 etc.
presentYear etc.
parseInt returns to main
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 11/33
Running AgeHistory2
someYear etc.
birthYear1 etc.
presentYear etc.
main calls printAgeHistory (*2)
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 13/33
Running AgeHistory2
string etc.
someYear etc.
birthYear1 etc.
presentYear etc.
printAgeHistory calls println (*3?)
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 15/33
Running AgeHistory2
string etc.
string etc.
someYear etc.
birthYear1 etc.
presentYear etc.
println calls print
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 17/33
Running AgeHistory2
char etc.
string etc.
string etc.
someYear etc.
birthYear1 etc.
presentYear etc.
print calls write (*n)
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 19/33
Running AgeHistory2
string etc.
string etc.
someYear etc.
birthYear1 etc.
presentYear etc.
write returns to print
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 21/33
Running AgeHistory2
string etc.
someYear etc.
birthYear1 etc.
presentYear etc.
print returns to println
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 23/33
Running AgeHistory2
char etc.
string etc.
someYear etc.
birthYear1 etc.
presentYear etc.
println calls write
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 25/33
Running AgeHistory2
string etc.
someYear etc.
birthYear1 etc.
presentYear etc.
write returns to println
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 27/33
Running AgeHistory2
someYear etc.
birthYear1 etc.
presentYear etc.
println returns to printAgeHistory
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 29/33
Running AgeHistory2
birthYear1 etc.
presentYear etc.
printAgeHistory returns to main
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 31/33
Running AgeHistory2
presentYear etc.
main finishes
COMP15111 Lecture 10 Lifespan of Variables in a Running Java Program 33/33
top related