Download presentation
Presentation is loading. Please wait.
Published byRamiro Scull Modified over 9 years ago
1
How do Methods Work?
2
Let’s write a method that adds two integer values together and returns the result.
3
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } This specifies the return type of the method. That is, this method will return an integer. Methods can only return one thing.
4
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } This is the name of the method.
5
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } These are the method’s parameters. A method can have any number of parameters, including none. The Parameters define the variables passed to the method when it is invoked.
6
A complete program using the add( ) method using System; class Program { static void Main() { int var1 = 8; int var2 = 5; int var3 = add(var1, var2); Console.WriteLine(var3); Console.ReadLine(); } // the add method // purpose: adds two integers // parameters: the integers to add together // returns: the sum static int add(int n1, int n2) { int sum = n1 + n2; return sum; }
7
A complete program using the add( ) method It is common to put the code for the method following Main( ) using System; class Program { static void Main() { int var1 = 8; int var2 = 5; int var3 = add(var1, var2); Console.WriteLine(var3); Console.ReadLine(); } // the add method // purpose: adds two integers // parameters: the integers to add together // returns: the sum static int add(int n1, int n2) { int sum = n1 + n2; return sum; }
8
A complete program using the add( ) method This is the line of code that actually calls, or invokes, the method. Two values are passed to the method. The method returns a value which is then stored in var3. using System; class Program { static void Main() { int var1 = 8; int var2 = 5; int var3 = add(var1, var2); Console.WriteLine(var3); Console.ReadLine(); } // the add method // purpose: adds two integers // parameters: the integers to add together // returns: the sum static int add(int n1, int n2) { int sum = n1 + n2; return sum; }
9
int var1 = 8; int var2 = 5; int var3 = add(var1, var2); Looking at the method call in more detail … The values of 8 and 5 get passed to the method..
10
var1 var25 8 add Let’s Investigate what happens … We will treat the method as a black box. It is important to note that we can’t see inside. var3
11
var1 var25 8 add Let’s Investigate what happens … We know what a method does by reading it’s prologue. var3
12
var1 var25 8 Make a copy of the variables. We don’t want the add method to change the original variables. add var3 Let’s Investigate what happens …
13
var1 var25 8 Make a copy of the variables. add 8 var3 Let’s Investigate what happens …
14
var1 var25 8 Make a copy of the variables. 8 add var3 Let’s Investigate what happens …
15
var1 var25 8 Make a copy of the variables. 8 add var3 5 Let’s Investigate what happens …
16
5 add Pass the copies of the variables to the method var1 var25 8 var3 8 Let’s Investigate what happens …
17
5 add Pass the copies of the variables to the method var1 var25 8 var3 Let’s Investigate what happens …
18
Inside of the Black Box static int add(int n1, int n2) { int sum = n1 + n2; return sum; } These are the method’s formal parameters. Notice that when inside of the box, we can’t see out.
19
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum These variables are local to the method. They only exist inside of the box. Inside of the Black Box
20
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 5 Inside of the Black Box Here comes the first value passed to the method.
21
Inside of the Black Box static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 8 It gets stored in the local variable n1. 8
22
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 5 8 Here comes the second value passed to the method. Inside of the Black Box
23
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 8 5 Inside of the Black Box 5 It gets stored in the local variable n2.
24
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 8 5 13 Inside of the Black Box Now the code of the method is executed.
25
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 8 5 13 Inside of the Black Box We need to pass sum back to the point where the method was called. So, we make a copy of sum.
26
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 5 8 13 Inside of the Black Box … and pass it back to the caller.
27
static int add(int n1, int n2) { int sum = n1 + n2; return sum; } n1 n2 sum 5 8 13 Inside of the Black Box … and pass it back to the caller.
28
int var1 = 8; int var2 = 5; int var3 = add(var1, var2); Looking at the method call in more detail … The method returns the value of 13 right here. The value is assigned to var3.
29
add Get the result var1 var25 8 var3 Let’s Investigate what happens … 13
30
var1 var25 8 Store the returned value in the variable that it was assigned to. add var3 13 Let’s Investigate what happens …
31
var1 var25 8 add var3 13 Let’s Investigate what happens … We’re Done!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.