modal-121 / 10 - Methods in Java /001 Methods in Java Overview_en.srt
Tan115's picture
Add files using upload-large-folder tool
2a75a66 verified
Raw
History Blame
7.08 kB
1
00:00:00,000 --> 00:00:01,000
Hello team!
2
00:00:01,000 --> 00:00:04,000
In this section we will learn with you more about methods in Java.
3
00:00:04,000 --> 00:00:09,000
We are going to have multiple lessons in this section from which you will learn what is method and what
4
00:00:09,000 --> 00:00:13,000
is method signature, how to declare methods and how to use them.
5
00:00:13,000 --> 00:00:16,000
You will understand how methods can return values.
6
00:00:16,000 --> 00:00:20,000
I will explain you how data is passed in Java by value and not by reference.
7
00:00:20,000 --> 00:00:24,000
How to write recursive methods and what are variable length arguments?
8
00:00:25,000 --> 00:00:26,000
Let's start.
9
00:00:26,000 --> 00:00:27,000
What is method?
10
00:00:28,000 --> 00:00:33,000
A method is a block of code which is referred to by name, and can be called at any point in your program
11
00:00:33,000 --> 00:00:35,000
simply with the methods name.
12
00:00:36,000 --> 00:00:40,000
Think of a method as a chunk of code, which can be performed on the request.
13
00:00:40,000 --> 00:00:45,000
When during the program execution method call is performed, the program proceed execution from that
14
00:00:45,000 --> 00:00:51,000
method and when method is finished, execution returns to the line of code in your program from where
15
00:00:51,000 --> 00:00:52,000
method was called.
16
00:00:53,000 --> 00:00:55,000
Let's write method together.
17
00:00:55,000 --> 00:00:58,000
Each method has access modifier.
18
00:00:58,000 --> 00:01:01,000
We will learn them during the object oriented programming topic.
19
00:01:02,000 --> 00:01:03,000
Let's write private.
20
00:01:03,000 --> 00:01:09,000
As of now, this means that we can access this method only in scope of this class.
21
00:01:10,000 --> 00:01:12,000
After that, let's write static.
22
00:01:12,000 --> 00:01:18,000
Static keyword means that this method is connected not with instances of this class, but with class
23
00:01:18,000 --> 00:01:19,000
itself.
24
00:01:19,000 --> 00:01:24,000
We'll have separate lessons where we will take a look at what a static and non-static methods.
25
00:01:24,000 --> 00:01:26,000
While we don't know OOP.
26
00:01:26,000 --> 00:01:28,000
Let's create static methods.
27
00:01:29,000 --> 00:01:31,000
Here we specify method return type.
28
00:01:31,000 --> 00:01:34,000
Each method can return some value after it finished.
29
00:01:35,000 --> 00:01:40,000
The result of the method execution can be assigned to variable of the same type as return type.
30
00:01:40,000 --> 00:01:42,000
And here is method name.
31
00:01:42,000 --> 00:01:48,000
Method names are usually verbs started with lowercase letter and written in camel case like this one,
32
00:01:48,000 --> 00:01:49,000
for example.
33
00:01:50,000 --> 00:01:52,000
It is very important how you name your methods.
34
00:01:53,000 --> 00:01:55,000
For example, guess what does this method do?
35
00:01:56,000 --> 00:01:58,000
It is straight and clear what this method does.
36
00:01:58,000 --> 00:02:02,000
You can save a lot of time for your colleagues and a lot of money for your company.
37
00:02:02,000 --> 00:02:06,000
Who pays for time of your colleagues if you will write clean code?
38
00:02:07,000 --> 00:02:13,000
Understanding of code which was written not by you can take up to 50% of time dedicated for development.
39
00:02:14,000 --> 00:02:19,000
That's why in this and in future lessons, I will put stress on clean code design.
40
00:02:19,000 --> 00:02:24,000
Because clean code is something that you can't learn in one day after you learned programming.
41
00:02:24,000 --> 00:02:27,000
It is something that you should learn constantly.
42
00:02:28,000 --> 00:02:31,000
After we wrote Methodname, we need to specify method parameters.
43
00:02:31,000 --> 00:02:37,000
Here we declare that this method can work with two integers, and int values can be passed as arguments
44
00:02:37,000 --> 00:02:38,000
to this method.
45
00:02:39,000 --> 00:02:43,000
Method name and method parameters together is called method signature.
46
00:02:44,000 --> 00:02:47,000
Why return type or access modifier is not part of method signature?
47
00:02:48,000 --> 00:02:53,000
The reason for this emphasis on just the method name and parameter list is because of overloading.
48
00:02:54,000 --> 00:02:55,000
What is overloading?
49
00:02:56,000 --> 00:03:02,000
Overloading it is the ability to write methods that have the same name but accept different arguments.
50
00:03:02,000 --> 00:03:08,000
The Java compiler is able to discern the difference between the methods through their method signatures.
51
00:03:08,000 --> 00:03:12,000
For example, we have method sum which can sum two arguments.
52
00:03:12,000 --> 00:03:17,000
This method can sum two integers and this method can sum to doubles.
53
00:03:17,000 --> 00:03:23,000
We can say that method sum is overloaded because we have two methods with the same name, but with different
54
00:03:23,000 --> 00:03:24,000
signatures.
55
00:03:24,000 --> 00:03:27,000
After we declared parameters, we should put braces.
56
00:03:27,000 --> 00:03:32,000
This will be our method body which will be executed each time we will call method.
57
00:03:32,000 --> 00:03:36,000
If method has return type, we should return some value from the method.
58
00:03:36,000 --> 00:03:42,000
To return value from the method, we need to write return keyword and specify either variable name or
59
00:03:42,000 --> 00:03:47,000
expression which has compatible type with the one specified in method declaration.
60
00:03:47,000 --> 00:03:50,000
It can be that method returns nothing.
61
00:03:50,000 --> 00:03:54,000
For example, here are methods which just prints values to console.
62
00:03:54,000 --> 00:03:58,000
They should return nothing because they just print values to console.
63
00:03:59,000 --> 00:04:03,000
In this case you should specify void as return type like this.
64
00:04:03,000 --> 00:04:10,000
And here you can find examples of the method invocations I call method some and it returns value.
65
00:04:10,000 --> 00:04:15,000
So I can initialize this int variable with the value which was returned from this method.
66
00:04:15,000 --> 00:04:17,000
Is it clear?
67
00:04:17,000 --> 00:04:22,000
I can call method and can pass to it the result of execution of another method like this.
68
00:04:23,000 --> 00:04:30,000
That means that this method will be executed first, and after that this method will be executed with
69
00:04:30,000 --> 00:04:32,000
value, which was returned from some method.
70
00:04:33,000 --> 00:04:38,000
You can find that printer console is also overloaded method which works with different types string,
71
00:04:38,000 --> 00:04:40,000
double and int.
72
00:04:40,000 --> 00:04:41,000
That's all.
73
00:04:41,000 --> 00:04:43,000
Thanks a lot for your attention.
74
00:04:43,000 --> 00:04:45,000
See you in the next lesson.
75
00:04:45,000 --> 00:04:46,000
Us.