Difference between revisions of "Java/C2/Constructor-overloading/English-timed"

From Script | Spoken-Tutorial
Jump to: navigation, search
Line 24: Line 24:
 
|  00:16
 
|  00:16
 
|  Here we are using:  
 
|  Here we are using:  
* Ubuntu version 11.10 OS
+
* '''Ubuntu version 11.10 OS'''
* Java Development kit 1.6
+
* '''Java Development kit 1.6'''
* Eclipse 3.7.0   
+
* '''Eclipse 3.7.0'''  
  
 
|-
 
|-
Line 40: Line 40:
 
| If not, for relevant tutorials, please visit our website which is as shown.
 
| If not, for relevant tutorials, please visit our website which is as shown.
 
http://www.spoken-tutorial.org
 
http://www.spoken-tutorial.org
 +
 
|-
 
|-
 
|  00:40
 
|  00:40
Line 82: Line 83:
 
|-
 
|-
 
|  01:51
 
|  01:51
let us call this '''constructor'''.
+
Let us call this '''constructor'''.
  
 
|-
 
|-
Line 102: Line 103:
 
|-
 
|-
 
|  02:22
 
|  02:22
| So, we need to   pass '''arguments'''.
+
| So, we need to pass '''arguments'''.
  
 
|-
 
|-
 
|  02:25
 
|  02:25
| So, within parentheses type: '''22''' comma in double quotes '''Ram'''.
+
| So, within parentheses type: 22 comma in double quotes '''Ram'''.
  
 
|-
 
|-
Line 118: Line 119:
 
|-
 
|-
 
|  02:38
 
|  02:38
| So, before '''new ''' type '''Student s''' is equal to '''new student'''.
+
| So, before '''new ''', type: '''Student s''' is equal to '''new student'''.
 
   
 
   
 
|-
 
|-
 
|  02:45
 
|  02:45
| Now using the object '''s''' we will call the method  ''' studentDetail()'''.
+
| Now, using the object '''s''' we will call the method  ''' studentDetail()'''.
  
 
|-
 
|-
Line 130: Line 131:
 
|-
 
|-
 
|  02:58
 
|  02:58
|  We see the output '''22''' and '''Ram.'''
+
|  We see the output: '''22''' and '''Ram.'''
  
 
|-
 
|-
Line 169: Line 170:
 
|-
 
|-
 
| 04:04
 
| 04:04
| So in  the output  we see '''zero''' and '''dash''' when the '''default''' '''constructor''' is called.
+
| So, in  the output  we see '''zero''' and '''dash''' when the default '''constructor''' is called.
  
 
|-
 
|-
Line 177: Line 178:
 
|-
 
|-
 
|  04:13
 
|  04:13
| We have two '''constructor''' with different parameter.
+
| We have two '''constructors''' with different parameters.
  
 
|-
 
|-
 
|  04:17
 
|  04:17
| Both the '''constructor'''s obviously have same name.
+
| Both the '''constructors''' obviously have same name.
  
 
|-
 
|-
 
|  04:20
 
|  04:20
| So depending on the type and number of parameters, the '''constructor''' is called.  
+
| So, depending on the type and number of parameters, the '''constructor''' is called.  
  
 
|-
 
|-
Line 193: Line 194:
 
|-
 
|-
 
|  04:30
 
|  04:30
| Suppose now call a constructor with two parameters.
+
| Suppose, now we call a constructor with two parameters.
  
 
|-
 
|-
Line 201: Line 202:
 
|-
 
|-
 
|  04:51
 
|  04:51
| Now within parentheses,  suppose I gave the '''name''' argument first and then the '''roll''' '''number.'''
+
| Now within parentheses,  suppose I gave the '''name''' argument first and then the '''roll_number.'''
  
 
|-
 
|-
Line 213: Line 214:
 
|-
 
|-
 
|  05:08  
 
|  05:08  
|  We see an error which states that the '''constructor student with the parameter  String comma int is undefined.'''
+
|  We see an error which states that "the '''constructor Student with the parameter  String comma int is undefined."'''
  
 
|-
 
|-
 
| 05:18
 
| 05:18
|  So, let us define the constructor.
+
|  So, let us first define the constructor.
  
 
|-
 
|-
 
| 05:22
 
| 05:22
| So, type: '''Student''' within parentheses '''String''' '''the_name''' comma '''int''' '''r_no'''
+
| So, type: '''Student''' within parentheses '''String''' '''the_name''' comma '''int''' '''r_no'''.
  
 
|-
 
|-
Line 228: Line 229:
 
|-
 
|-
 
| 05:52
 
| 05:52
|Then Within curly bracket, '''roll_number''' is equal to '''r_no.'''
+
|Then, within curly bracket, '''roll_number''' is equal to '''r_no;'''
  
 
|-
 
|-
 
| 06:05
 
| 06:05
| And '''name''' is equal to '''the_name.'''
+
| and '''name''' is equal to '''the_name;'''
  
 
|-
 
|-
Line 248: Line 249:
 
|-
 
|-
 
| 06:24
 
| 06:24
| So, '''s3''' dot '''studentDetail.'''
+
| So, '''s3''' dot '''studentDetail();'''
  
 
|-
 
|-
 
|  06:29
 
|  06:29
|   '''Save''' the program and '''Run'''.   
+
| '''Save''' the program and '''Run'''.   
  
 
|-
 
|-
 
|  06:35
 
|  06:35
|So we see the output '''45''' and '''Raju'''.   
+
|So, we see the output '''45''' and '''Raju'''.   
  
 
|-
 
|-
Line 268: Line 269:
 
|-
 
|-
 
| 06:47
 
| 06:47
| This is simply because we have defined multiple '''constructor''' with different parameters.
+
| This is simply because we have defined multiple '''constructors''' with different parameters.
  
 
|-
 
|-
Line 284: Line 285:
 
|-
 
|-
 
| 07:05
 
| 07:05
| So, type: '''Student''' within parentheses '''int num'''
+
| So, type: '''Student''' within parentheses '''int num''',
  
 
|-
 
|-
Line 292: Line 293:
 
|-
 
|-
 
| 07:25
 
| 07:25
| And '''name''' is equal to '''no''' '''name'''.
+
| And '''name''' is equal to "no name".
  
 
|-
 
|-
 
| 07:33
 
| 07:33
| Now  let us call this  '''constructor'''   
+
| Now, let us call this  '''constructor'''.  
  
 
|-
 
|-
 
| 07:43
 
| 07:43
| So, type: '''Student''' '''s4''' is equalto '''new''' '''Student'''.  This time we will pass a single argument. So let us pass '''61'''.
+
| So, type: '''Student''' '''s4''' is equal to '''new''' '''Student;'''.  This time we will pass a single argument. So, let us pass '''61'''.
  
 
|-
 
|-
 
| 08:04
 
| 08:04
| Then '''s4''' dot ''' studentDetail '''
+
| Then '''s4''' dot ''' studentDetail(); '''
  
 
|-
 
|-
Line 312: Line 313:
 
|-
 
|-
 
|  08:14
 
|  08:14
| So in the output we see  the '''roll''' '''number''' as '''61''' and '''name''' as '''no''' '''name.'''
+
| So, in the output we see  the '''roll number''' as '''61''' and '''name''' as '''no name.'''
  
 
|-
 
|-
Line 328: Line 329:
 
|-
 
|-
 
|  08:40
 
|  08:40
|  So in this tutorial, we have learnt:  
+
|  So, in this tutorial, we have learnt:  
  
 
|-
 
|-
Line 384: Line 385:
 
| 09:35
 
| 09:35
 
|  More information on this mission is available at  
 
|  More information on this mission is available at  
[http://spoken-tutorial.org/NMEICT-Intro]
+
[http://spoken-tutorial.org/NMEICT-Intro].
  
 
|-
 
|-

Revision as of 14:47, 8 April 2015


Time Narration
00:03 Welcome to the Spoken Tutorial on constructor overloading in java.
00:08 In this tutorial, we will learn
00:10 what is constructor overloading
00:13 and to overload constructor.
00:16 Here we are using:
  • Ubuntu version 11.10 OS
  • Java Development kit 1.6
  • Eclipse 3.7.0
00:27 To follow this tutorial, you must know
00:30 how to create constructors in java using eclipse.
00:34 If not, for relevant tutorials, please visit our website which is as shown.

http://www.spoken-tutorial.org

00:40 What is constructor overloading?
00:43 Define multiple constructors for a class.
00:46 They must differ in number or types of parameters.
00:50 Let us now see how to overload constructor.
00:54 In eclipse, I have a class Student with two variables and a method.
01:03 Let us first create a parameterized constructor.
01:07 So, type: Student within parentheses int number comma String the_name.
01:26 Within curly brackets, type: roll_number is equal to number.
01:38 And name is equal to the_name
01:46 So, we have a constructor with two parameters.
01:51 Let us call this constructor.
01:53 So, in main method type: new Student parentheses semicolon.
02:03 We see an error, it states that constructor Student is undefined.
02:10 This is simply because we have defined a constructor with two parameters.
02:16 And we are calling a constructor without parameters.
02:22 So, we need to pass arguments.
02:25 So, within parentheses type: 22 comma in double quotes Ram.
02:33 We see that the error is resolved.
02:36 Let us call the method.
02:38 So, before new , type: Student s is equal to new student.
02:45 Now, using the object s we will call the method studentDetail().
02:53 Save the program and Run.
02:58 We see the output: 22 and Ram.
03:03 Now let us define a constructor with no parameter.
03:07 So, type: Student parentheses.
03:12 Within curly brackets roll_number is equal to 0.
03:21 And name is equal to in double quotes hyphen that is no name.
03:30 So, now we can call the constructor with no parameters.
03:35 So, type: Student s1 is equal to new Student parentheses semicolon.
03:47 This time we see no error, since we have defined a constructor without parameter.
03:55 Then s1 dot studentDetail.
04:01 Save and Run the program.
04:04 So, in the output we see zero and dash when the default constructor is called.
04:11 This is constructor overloading.
04:13 We have two constructors with different parameters.
04:17 Both the constructors obviously have same name.
04:20 So, depending on the type and number of parameters, the constructor is called.
04:26 Let us see the advantage of constructor overloading.
04:30 Suppose, now we call a constructor with two parameters.
04:35 So, type: Student s3= new Student();
04:51 Now within parentheses, suppose I gave the name argument first and then the roll_number.
04:58 Let's see what happens.
04:59 So, in double quotes Raju comma 45.
05:08 We see an error which states that "the constructor Student with the parameter String comma int is undefined."
05:18 So, let us first define the constructor.
05:22 So, type: Student within parentheses String the_name comma int r_no.
05:42 So, over here first parameter is string and the second parameter is int.
05:52 Then, within curly bracket, roll_number is equal to r_no;
06:05 and name is equal to the_name;
06:15 Save the program.
06:18 Now we see that the error is resolved.
06:22 Let us call the method.
06:24 So, s3 dot studentDetail();
06:29 Save the program and Run.
06:35 So, we see the output 45 and Raju.
06:40 So, here we see that when we call the constructor
06:43 we do not have to worry about the parameters that we are passing.
06:47 This is simply because we have defined multiple constructors with different parameters.
06:54 So, the proper constructor is overloaded.
06:57 We can therefore now define a constructor which takes only one parameter.
07:02 That is roll number.
07:05 So, type: Student within parentheses int num,
07:16 within curly brackets roll_number is equal to num.
07:25 And name is equal to "no name".
07:33 Now, let us call this constructor.
07:43 So, type: Student s4 is equal to new Student;. This time we will pass a single argument. So, let us pass 61.
08:04 Then s4 dot studentDetail();
08:10 Save and Run the program.
08:14 So, in the output we see the roll number as 61 and name as no name.
08:21 As we can see, the proper overloaded constructor is called when new is executed.
08:27 Based upon the parameters specified, the proper constructor is overloaded.
08:33 This is how constructor overloading is done.
08:40 So, in this tutorial, we have learnt:
08:42 * About the constructor overloading
08:45 * To overload constructor and the use of constructor overloading
08:50 For self assessment, create multiple constructors for class Employee and overload the constructor.
08:58 To know more about the Spoken Tutorial project,
09:00 watch the video available at [1].
09:06 It summarizes the Spoken Tutorial project.
09:09 If you do not have good bandwidth, you can download and watch it.
09:12 The Spoken Tutorial project team:
09:15 Conducts workshops using spoken tutorials.
09:17 Gives certificates to those who pass an online test.
09:20 For more details, please write to contact@spoken-tutorial.org
09:26 Spoken Tutorial Project is a part of the Talk to a Teacher project.
09:30 It is supported by the National Mission on Education through ICT, MHRD, Government of India.
09:35 More information on this mission is available at

[2].

09:43 This brings us to the end of the tutorial.
09:46 Thanks for joining.
09:47 This is Prathamesh Salunke, signing off. Jai Hind.

Contributors and Content Editors

Devisenan, Gaurav, PoojaMoolya, Sandhya.np14, Sneha