그만큼 자바의 메소드 또는 Java의 메소드는 특정 작업을 수행하고 결과를 호출자에게 반환하는 명령문 모음입니다. Java 메소드는 아무것도 반환하지 않고 일부 특정 작업을 수행할 수 있습니다. Java 메소드를 사용하면 다음을 수행할 수 있습니다. 재사용 코드를 다시 입력하지 않고 코드를 입력합니다. Java에서 모든 메소드는 C, C++, Python과 같은 언어와는 다른 일부 클래스의 일부여야 합니다.
- 메소드는 객체의 동작을 노출하는 데 사용되는 함수와 같습니다.
- 특정 작업을 수행하는 코드 집합입니다.
방법의 구문
( list_of_parameters) { //body }>방식의 장점
- 코드 재사용성
- 코드 최적화
메모: 메소드는 시간을 절약해 주고 코드를 다시 입력하지 않고도 코드를 재사용할 수 있도록 도와줍니다.
메소드 선언
일반적으로 메서드 선언에는 6개의 구성 요소가 있습니다.
1. 수정자: 이는 다음을 정의합니다. 액세스 유형 즉, 애플리케이션에서 액세스할 수 있는 방법입니다. Java에는 4가지 유형의 액세스 지정자가 있습니다.
- 공공의: 그것은 애플리케이션의 모든 클래스에서 액세스할 수 있습니다.
- 보호됨: 정의된 클래스 내와 해당 하위 클래스에서 액세스할 수 있습니다.
- 사적인: 그것은 정의된 클래스 내에서만 접근 가능합니다.
- 기본: 수식자를 사용하지 않고 선언/정의됩니다. 해당 클래스가 정의된 동일한 클래스 및 패키지 내에서 액세스할 수 있습니다.
메모: 그것은 선택 과목 구문에서.
2. 반환 유형: 메소드에 의해 반환된 값의 데이터 유형이거나 값을 반환하지 않는 경우 void입니다. 그것은 필수적인 구문에서.
3. 방법 이름: 필드 이름에 대한 규칙은 메서드 이름에도 적용되지만 규칙은 약간 다릅니다. 그것은 필수적인 구문에서.
4. 매개변수 목록: 입력 매개변수의 쉼표로 구분된 목록은 괄호 안에 해당 데이터 유형이 앞에 따라 정의됩니다. 매개변수가 없으면 빈 괄호()를 사용해야 합니다. 그것은 선택 과목 구문에서.
5. 예외 목록: 메소드에서 예상하는 예외가 발생할 수 있습니다. 이러한 예외를 지정할 수 있습니다. 그것은 선택 과목 구문에서.
6. 메소드 본문: 중괄호 사이에 묶여 있습니다. 의도한 작업을 수행하기 위해 실행해야 하는 코드입니다. 그것은 선택 과목 구문에서.

Java의 메소드 유형
Java에는 두 가지 유형의 메소드가 있습니다.
1. 사전 정의된 방법
Java에서 사전 정의된 메소드는 Java 클래스 라이브러리에 이미 정의된 메소드를 사전 정의된 메소드라고 합니다. 표준 라이브러리 방법 또는 내장 방법이라고도 합니다. 언제든지 프로그램에서 호출하여 이러한 메서드를 직접 사용할 수 있습니다.
2. 사용자 정의 방법
사용자나 프로그래머가 작성한 메소드를 사용자 정의 메소드라고 합니다. 이러한 방법은 요구 사항에 따라 수정됩니다.
Java에서 메소드를 생성하는 방법
Java에서 메소드를 작성하는 방법에는 두 가지가 있습니다.
SQL의 대소 문자는 무엇입니까
1. 인스턴스 방법: 객체 이름을 사용하여 인스턴스 데이터에 액세스합니다. 클래스 내부에 선언되었습니다.
통사론:
// Instance Method void method_name(){ body // instance area }>2. 정적 방법: 클래스 이름을 사용하여 정적 데이터에 액세스합니다. 내부 클래스로 선언됨 공전 예어.
통사론:
//Static Method static void method_name(){ body // static area }>방법 서명:
메소드 이름과 매개변수 목록(매개변수 수, 매개변수 유형, 매개변수 순서)으로 구성됩니다. 반환 유형과 예외는 그것의 일부로 간주되지 않습니다.
위 함수의 메소드 서명:
max(int x, int y) Number of parameters is 2, Type of parameter is int.>
메소드 이름 지정
메소드 이름은 일반적으로 하나의 단어로 구성되어야 합니다. 동사 소문자 또는 여러 단어로 시작하는 a 동사 소문자로 뒤에 형용사, 명사. 첫 번째 단어 다음에는 각 단어의 첫 글자를 대문자로 표기해야 합니다.
우분투의 캡처 도구
메소드 이름 지정 규칙:
- 메서드를 정의하는 동안 메서드 이름은 다음과 같아야 한다는 점을 기억하세요. 동사 그리고 다음으로 시작하세요 소문자 편지.
- 메소드 이름이 세 단어 이상인 경우 이름은 동사 뒤에 형용사 또는 명사가 와야 합니다.
- 여러 단어로 구성된 메소드 이름에서 각 단어의 첫 글자는 다음과 같아야 합니다. 대문자 첫 번째 단어만 제외하고. 예를 들어 findSum, ComputeMax, setX 및 getX가 있습니다.
일반적으로 메소드는 정의된 클래스 내에서 고유한 이름을 가지지만 때로는 동일한 클래스 내의 다른 메소드 이름과 동일한 이름을 가질 수도 있습니다. Java에서는 메소드 오버로딩이 허용됩니다. .
메소드 호출
해당 기능을 사용하려면 메서드를 호출해야 합니다. 메서드가 호출되는 경우 세 가지 상황이 있을 수 있습니다.
메소드는 다음과 같은 경우 호출한 코드로 반환됩니다.
- 이는 메소드의 모든 명령문을 완료합니다.
- 반환문에 도달합니다.
- 예외가 발생합니다.
예:
자바 // 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); } }> 산출
Sum of two integer values :3>
예시 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); } }> 산출
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>
위 프로그램의 제어 흐름은 다음과 같습니다.

매개변수를 메소드에 전달하기
전달할 매개변수의 개수를 알 수 없는 경우도 있고, 선언된 매개변수 개수보다 더 많은 매개변수를 사용하게 되는 예상치 못한 경우도 있습니다. 그러한 경우에 우리는 다음을 사용할 수 있습니다.
- 배열을 인수로 전달하기
- 가변 인수를 인수로 전달하기
- 메소드 오버로딩.
메서드 호출을 위한 메모리 할당
메서드 호출은 스택을 통해 구현됩니다. 메소드가 호출될 때마다 스택 영역 내에 스택 프레임이 생성되고 이후 이 호출된 메소드에 전달된 인수, 로컬 변수 및 반환될 값이 이 스택 프레임에 저장되고 호출된 메소드의 실행이 완료됩니다. , 할당된 스택 프레임이 삭제됩니다. 그에 따라 조정되는 스택의 상단을 추적하는 스택 포인터 레지스터가 있습니다.
예: 메서드 구현을 위한 의사 코드
자바 // Define a class public class Example { // Define instance variables private int number; private String name; // Define accessor (getter) methods public int getNumber() { return number; } public String getName() { return name; } // Define mutator (setter) methods public void setNumber(int number) { this.number = number; } public void setName(String name) { this.name = name; } // Define other methods public void printDetails() { System.out.println('Number: ' + number); System.out.println('Name: ' + name); } } // Use the methods in another part of the code Example example = new Example(); example.setNumber(123); example.setName('GFG Write'); example.printDetails();> Java에서 메소드를 사용하면 다음과 같은 몇 가지 이점이 있습니다.
- 재사용 성 : 메소드를 사용하면 코드를 한 번 작성하고 여러 번 사용할 수 있으므로 코드를 더욱 모듈화하고 유지 관리하기 쉽게 만들 수 있습니다.
- 추출 : 메소드를 사용하면 복잡한 논리를 추상화하고 다른 사람이 사용할 수 있는 간단한 인터페이스를 제공할 수 있습니다. 이렇게 하면 코드가 더 읽기 쉽고 이해하기 쉬워집니다.
- 가독성 향상 : 코드를 더 작고 이름이 잘 알려진 메소드로 분할하면 코드를 더 읽기 쉽고 이해하기 쉽게 만들 수 있습니다.
- 캡슐화 : 메소드를 사용하면 복잡한 논리와 데이터를 캡슐화하여 관리 및 유지 관리가 더 쉬워집니다.
- 관심의 분리 s: 메서드를 사용하면 코드의 여러 부분을 분리하고 메서드별로 서로 다른 책임을 할당하여 코드의 구조와 구성을 개선할 수 있습니다.
- 향상된 모듈성 : 메소드를 사용하면 코드를 더 작고 관리하기 쉬운 단위로 분할하여 코드의 모듈성을 향상시킬 수 있습니다.
- 테스트 용이성 향상 : 코드를 더 작고 관리하기 쉬운 단위로 분할하면 코드를 더 쉽게 테스트하고 디버그할 수 있습니다.
- 향상된 성능: 코드를 잘 구조화된 메서드로 구성하면 실행해야 하는 코드의 양을 줄이고 코드를 더 쉽게 캐시하고 최적화하여 성능을 향상시킬 수 있습니다.
Java의 메소드에 대한 FAQ
Q. Java 프로그래밍에서 메소드(Method)란 무엇인가요?
Java 메소드는 특정 작업을 수행하고 결과를 호출자에게 반환하는 명령문 모음입니다.
Q. Java의 메소드에는 어떤 부분이 있나요?
Java의 5가지 메소드 부분은 다음과 같습니다.
- 수정자
- 반환 유형
- 메소드 이름
- 매개변수
- 메소드 본문
관련 기사:
- Java는 엄격하게 값을 전달합니다.
- Java의 메소드 오버로딩 및 Null 오류
- Java에서 정적 메서드를 오버로드하거나 재정의할 수 있나요?
- 자바 퀴즈