Java/C2/Method-overloading/English-timed

From Script | Spoken-Tutorial
Revision as of 15:34, 28 March 2017 by PoojaMoolya (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
00:01 Welcome to the Spoken Tutorial on Method overloading in java.
00:06 In this tutorial we will learn:
00:08 What is method overloading.
00:10 And to overload method.
00:13 Here we are using:

Ubuntu version 11.10 OS Java Development kit 1.6 And Eclipse 3.7.0

00:24 To follow this tutorial, you must know
00:26 how to create methods and
00:29 to overload constructor in java using eclipse.
00:32 If not, for relevant tutorials, please visit our website which is as shown. http://www.spoken-tutorial.org
00:39 What is method overloading?
00:42 Define two or more methods with same name within a class.
00:46 They must differ in number or types of parameters.
00:50 These methods are called overloaded methods.
00:54 The process is called method overloading.
00:57 Let us now see how to overload a method.
01:00 In eclipse, I have a class Addition.
01:06 Inside the class, we will declare two integer variables.
01:10 So, type: int a equal to 10 and int b equal to 5.
01:19 Let us create a method to add these two integers.
01:23 So, type: void add parentheses.
01:30 Within curly brackets, type: System dot out dot println();.
01:40 Inside parentheses a+b.
01:44 So, this method will give us the sum of two integer variables.
01:50 Let us create another method which takes two parameters.
01:55 So, type: void addTwoNumbers().
02:04 Within parentheses int num1 comma int num2.
02:14 Then, within curly brackets System dot out dot println num1 plus num2.
02:35 So, this method will give us the sum of two values that are passed as arguments to this method.
02:44 Let us create an object of the class and call the methods.
02:49 So, in the main method type: Addition i.e the class name obj equal to new Addition parentheses semicolon.
03:13 Then Obj.add();
03:18 And Obj.addTwonumbers(); within parentheses
03:31 we will pass two arguments.
03:33 Suppose if we pass floating point values.
03:37 So, type 2.5 comma and an integer 3.
03:45 We get an error. It states that: The method addTwoNumbers int comma int of the class addition is not applicable for the arguments double comma int.
03:57 So, what we do is, in the method instead of int we will give double.
04:06 So replace int by double . Save the file.
04:12 We see that the error is resolved.
04:17 We also know that Java automatically i.e. implicitly coverts int into double.
04:24 So, here we can pass integer arguments as well.
04:28 Now Save and Run the program.
04:32 In the output, we see the sum of two integer variables
04:37 and the sum of two numeric arguments that we passed.
04:43 Now, we see that both the methods perform same operation.
04:50 The difference is that the first method has no parameters while the second method has parameters.
05:00 So, in such cases java provides us with method overloading.
05:05 So, what we do is, give same name to both the methods.
05:09 So, replace addTwoNumbers() with add(), also change here.
05:29 We will define one more method with same operation.
05:33 So, type: void add().
05:38 Within parentheses int n1 comma int n2 comma int n3.
05:51 So, we have given three parameters.
05:54 Then, within curly brackets System dot out dot println().
06:03 Within parentheses n1 plus n2 plus n3.
06:11 So, this method will give sum of three numbers.
06:17 Let us call this method.
06:19 So, type: obj dot add() 1 comma 5 comma 4.
06:35 Save and Run.
06:39 In the output, we see the sum of three number i.e 10.
06:47 So,Java compiler overloads the proper method depending on the parameters.
06:52 It checks the number and type of parameters passed.
06:57 So, as a programmer we don't have to worry about the method name.
07:01 Nor even the type or number of arguments we passed.
07:05 We can create one more method which appends strings.
07:11 So we will create one more overload method.
07:15 Type: void add String s1 comma String s2.
07:29 Within curly brackets System dot out dot println().
07:41 Within parentheses s1 plus s2.
07:45 Then we will call this method.
07:50 So, type: obj dot add.
07:55 Within parentheses in double quotes Hello comma in double quotes space World.
08:07 Now Save and Run the program.
08:12 So, in the output we see Hello space World.
08:16 So, the add method with two string arguments, appends the string.
08:21 Suppose now we declare add method with return type.
08:27 So, type: int add parentheses no parameter and curly brackets.
08:40 We get an error. It states that "Duplicate method add() in type Addition".
08:48 This is because we have already declared a method add() with no parameters.
08:54 So, remember that to overload a method, the parameters must differ.
08:58 Having different return types will not overload the method.
09:03 So, remove this method and Save the file.
09:09 This is how method overloading is done in java.
09:16 So, in this tutorial we learnt:
09:18 About method overloading.
09:20 To overload method.
09:22 And advantage of method overloading.
09:25 For self assessment: Create a method subtract that subtracts number,
09:31 Overload it.
09:33 To know more about the Spoken Tutorial project,
09:36 watch the video available at http://spoken-tutorial.org/What_is_a_Spoken_Tutorial.
09:42 It summarizes the Spoken Tutorial project.
09:45 If you do not have good bandwidth, you can download and watch it.
09:48 The Spoken Tutorial project team:
09:50 Conducts workshops using spoken tutorials.
09:52 Gives certificates to those who pass an online test.
09:56 For more details, please write to contact@spoken-tutorial.org
10:01 Spoken Tutorial Project is a part of the Talk to a Teacher project.
10:05 It is supported by the National Mission on Education through ICT, MHRD, Government of India.
10:11 More information on this mission is available at [1].
10:19 We have come to the end of this tutorial.
10:21 Thanks for joining.This is Prathamesh Salunke, signing off. Jai Hind.

Contributors and Content Editors

Devisenan, Gaurav, Jyotisolanki, PoojaMoolya, Pratik kamble, Sandhya.np14, Sneha