>  기사  >  Java  >  Java 메소드를 정의하고 호출하는 방법

Java 메소드를 정의하고 호출하는 방법

王林
王林앞으로
2023-05-01 08:13:131093검색

1. 소개

  • 학습 개요: 네 가지 유형의 메소드 애플리케이션, 메소드 호출 시 메모리 맵 및 오버로딩을 학습합니다.

  • 학습 목표: 메소드의 애플리케이션 및 오버로딩을 능숙하게 익히기

II, 정의 and call

1. 개요

  • 정의: 메소드는 반복 호출을 용이하게 하기 위해 코드 조각을 함수로 캡슐화하는 문법 구조입니다.

  • 분류: 일반적으로 매개변수(있음/없음), 반환 값으로 구분됩니다. (예/아니요)

  • 이점: 코드 재사용성 향상 및 논리 명확성

2. Format

수정자 반환 값 유형 메서드 이름(공식 매개변수 목록)
{
//메소드 본문
반환 값;
}

예:

Java 메소드를 정의하고 호출하는 방법

3.

메소드를 호출하려면 호출 형식이 다음과 같습니다.

메소드 이름(…);

int sum = add(10, 20);
System.out.println(sum);
4.

수정자에 유의하세요. 현재
  • 수정에는 공용 정적이 사용됩니다. 형식 매개변수는 없을 수 있지만 호출할 때 쉼표로 구분해야 하는 매개변수가 여러 개 있습니다. 해당 유형의 변수 값을 전달해야 합니다
  • 반환 값: 메소드가 반환 유형을 정의하는 경우 메소드 내부의 코드 세그먼트에 이를 반영해야 합니다. 메소드가 결과를 반환할 필요가 없으면 반환 값 유형을 void(반환 값 없음)로 선언해야 합니다.
  • 3. 예시
1. 예시 1

메소드 설계(매개 변수 없음, 반환 값 없음) ) 두 개를 인쇄합니다. 숫자의 크기 관계

코딩 구현:

public static void main(String[] args) 
{
	getRelation();//调用方法
}
public static void getRelation()
{
	int a=10;
	int b=20;
	if(a>b)
	{
		System.out.println("a大于b");
	}
	else if(a<b)
	{
		System.out.println("a小于b");
	}
	else
	{
		System.out.println("a等于b");
	}
}

출력 결과:

a가 b

2보다 작습니다. 예 2

인쇄할 메소드(매개변수 포함 및 반환 값 없음) 설계 두 숫자의 최대값

코딩 구현:

public static void main(String[] args) 
{
	getMax(10,20);//调用方法
}
public static void getMax(int a,int b)//带参无返回值
{
	if(a>b)
	{
		System.out.println(a);
	}
	else
	{
		System.out.println(b);
	}
}

출력 결과:

20

3. 예제 3

두 숫자의 최대값을 인쇄하는 메서드(매개변수 및 반환 값 int 유형 사용)를 설계합니다.

코딩 구현 :

public static void main(String[] args) 
{
	System.out.println(getMax(10,20));//调用方法
}
public static int getMax(int a,int b)//带参无返回值
{
	if(a>b)
	{
		return a;
	}
	else
	{
		return b;
	}
}

출력 결과:

20

4. 메소드 호출의 메모리 맵

Java 메소드를 정의하고 호출하는 방법

메소드 호출은 bytecode 파일에 저장됩니다. 메소드 영역에서 스택 메모리에 들어가서
  • java 프로그램을 실행하여 클래스 바이트코드 파일을 컴파일 및 생성하고, 메소드 영역에 메인 메소드, eat, Study, eat 메소드를 저장합니다. 주 함수 호출을 입력하고 스택 메모리에서 결과를 실행합니다.
  • 5. 오버로딩
  • 1. 개요

    정의: 동일한 클래스에는 반환 값에 관계없이 이름은 같지만 형식 매개변수 목록(유형 또는 숫자가 다름)이 다른 여러 메서드가 있습니다. 예를 들어 메소드 오버로딩인지 확인하는 몇 가지 예는 다음과 같습니다.

첫번째는 아니고, 반환값과 아무 관련이 없습니다

두번째는 형식 매개변수의 양이 다르다는 것Java 메소드를 정의하고 호출하는 방법

  • 세 번째는 형식 매개변수가 정의 유형이 다릅니다

  • 네 번째는 아니요입니다. 동일한 클래스에 없습니다

  • 2. 예

    두 개의 int 유형 정수의 합, 두 개의 double 유형 데이터의 합을 구현하는 세 개의 오버로드된 메소드를 구성합니다. 세 가지 int 유형의 합 데이터 추가
  • 인코딩 구현:

    public static void main(String[] args)
    {
    	int result=sum(10,20);
    	System.out.println(result);
    	double result1=sum(10.0, 20.0);
    	System.out.println(result1);
    	int result2=sum(10, 20,30);
    	System.out.println(result2);
    }
    public static int sum(int a,int b)
    {
    	return a+b;
    }
    public static double sum (double a,double b)
    {
    	return a+b;
    }
    public static int sum(int a,int b,int c)
    {
    	return a+b+c;
    }

    출력 결과:

30

30.0

60

위 내용은 Java 메소드를 정의하고 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제