JAVA: Method di Java
Method di Java atau Java Method adalah kumpulan perintah yang melakukan beberapa tugas tertentu dan mengembalikan hasilnya ke pemanggil. Method Java dapat melakukan beberapa tugas tertentu tanpa perlu memberikan return apa pun. Metdod di Java memungkinkan kita untuk menggunakan kembali code tanpa mengetik ulang code. Di Java, setiap method harus menjadi bagian dari Class yang berbeda dengan bahasa seperti C, C++, dan Python.
Catatan: Method adalah penghemat waktu dan penolong kita yang memungkinkan kita menggunakan ulang code tanpa menulis ulang code.
Method Declaration
Secara umum, deklarasi method ada enam (6) komponen:
- Modifier: Ini mendefinisikan jenis akses dari method yaitu dari mana method tersebut dapat diakses di aplikasi kita. Di Java, ada 4 jenis akses.
public: Itu dapat diakses di semua Class dalam aplikasi yang kita buat. protected: Itu dapat diakses di dalam Class di mana dia didefinisikan dan di subclass-nya. private: Itu hanya dapat diakses di dalam Class di mana ia didefinisikan. default: Itu dideklarasikan/didefinisikan tanpa menggunakan modifier apa pun. Itu dapat diakses di dalam class dan package yang sama di mana class didefinisikan.
- Return type: Tipe data dari nilai yang dikembalikan oleh method atau batal jika tidak mengembalikan (return) sebuah nilai.
- Method Name: aturan untuk nama field berlaku untuk nama method juga, tetapi konvensinya sedikit berbeda.
- Parameter list: Comma-separated list di definisikan, didahului dengan tipe datanya, di dalam kurung tertutup. Jika tidak ada parameter, kita harus menggunakan tanda kurung kosong ().
- Exception list: exception yang kita harapkan dapat di throw oleh method, kita dapat menentukan exception ini.
- Method body: di tutup antara dua kurung kurawal. Berisi code yang harus di jalankan untuk operasi yang kita inginkan..
methods in java
Types of Methods in Java There are two types of methods in Java:
1. Predefined Method: In Java, predefined methods are the method that is already defined in the Java class libraries is known as predefined methods. It is also known as the standard library method or built-in method. We can directly use these methods just by calling them in the program at any point.
2. User-defined Method: The method written by the user or programmer is known as a user-defined method. These methods are modified according to the requirement.
Method Signature It consists of the method name and a parameter list (number of parameters, type of the parameters, and order of the parameters). The return type and exceptions are not considered as part of it.
Method Signature of above function:
max(int x, int y) Number of parameters is 2, Type of parameter is int.
How to Name a Method? A method name is typically a single word that should be a verb in lowercase or multi-word, that begins with a verb in lowercase followed by an adjective, noun….. After the first word, the first letter of each word should be capitalized.
Rules to Name a Method
While defining a method, remember that the method name must be a verb and start with a lowercase letter. If the method name has more than two words, the first name must be a verb followed by an adjective or noun. In the multi-word method name, the first letter of each word must be in uppercase except the first word. For example, findSum, computeMax, setX and getX. Generally, a method has a unique name within the class in which it is defined but sometimes a method might have the same name as other method names within the same class as method overloading is allowed in Java.
Method Calling The method needs to be called for using its functionality. There can be three situations when a method is called: A method returns to the code that invoked it when:
It completes all the statements in the method It reaches a return statement Throws an exception Example:
// Java Program to Illustrate Methods
// Importing required classes import java.io.*;
// Class 1 // Helper class class Addition {
// Initially taking sum as 0 // as we have not started computation int sum = 0; // Method // To add two numbers public int addTwoInt(int a, int b) { // Adding two integer value sum = a + b; // Returning summation of two values return sum; }
}
// Class 2 // Helper class class GFG {
// Main driver method public static void main(String[] args) { // Creating object of class 1 inside main() method Addition add = new Addition(); // Calling method of above class // to add two integer // using instance created int s = add.addTwoInt(1, 2); // Printing the sum of two numbers System.out.println("Sum of two integer values :" + s); }
}
Output Sum of two integer values :3
Example 2:
// Java Program to Illustrate Method Calling
// Via Different Ways of Calling a Method
// Importing required classes import java.io.*;
// Class 1 // Helper class class Test {
public static int i = 0; // Constructor of class Test() { // Counts the number of the objects of the class i++; } // Method 1 // To access static members of the class and // and for getting total no of objects // of the same class created so far public static int get() { // statements to be executed.... return i; } // Method 2 // Instance method calling object directly // that is created inside another class 'GFG'. // Can also be called by object directly created in the // same class and from another method defined in the // same class and return integer value as return type is // int. public int m1() { // Display message only System.out.println( "Inside the method m1 by object of GFG class"); // Calling m2() method within the same class. this.m2(); // Statements to be executed if any return 1; } // Method 3 // Returns nothing public void m2() { // Print statement System.out.println( "In method m2 came from method m1"); }
}
// Class 2 // Main class class GFG {
// Main driver method public static void main(String[] args) { // Creating object of above class inside the class Test obj = new Test(); // Calling method 2 inside main() method int i = obj.m1(); // Display message only System.out.println( "Control returned after method m1 :" + i); // Call m2() method // obj.m2(); int no_of_objects = Test.get(); // Print statement System.out.print( "No of instances created till now : "); System.out.println(no_of_objects); }
}
Output Inside the method m1 by object of GFG class In method m2 came from method m1 Control returned after method m1 :1 No of instances created till now : 1
The control flow of the above program is as follows:
methods in java
Memory Allocation for Methods Calls
Methods calls are implemented through a stack. Whenever a method is called a stack frame is created within the stack area and after that, the arguments passed to and the local variables and value to be returned by this called method are stored in this stack frame and when execution of the called method is finished, the allocated stack frame would be deleted. There is a stack pointer register that tracks the top of the stack which is adjusted accordingly.
Panggilan metode diimplementasikan melalui tumpukan. Setiap kali suatu metode dipanggil, bingkai tumpukan dibuat di dalam area tumpukan dan setelah itu, argumen yang diteruskan ke dan variabel lokal serta nilai yang akan dikembalikan oleh metode yang dipanggil ini disimpan dalam bingkai tumpukan ini dan ketika eksekusi metode yang dipanggil selesai , bingkai tumpukan yang dialokasikan akan dihapus. Ada register penunjuk tumpukan yang melacak bagian atas tumpukan yang disesuaikan.