Presentation is loading. Please wait.

Presentation is loading. Please wait.

How do Methods Work?. Let’s write a method that adds two integer values together and returns the result.

Similar presentations


Presentation on theme: "How do Methods Work?. Let’s write a method that adds two integer values together and returns the result."— Presentation transcript:

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!


Download ppt "How do Methods Work?. Let’s write a method that adds two integer values together and returns the result."

Similar presentations


Ads by Google