>Java >java지도 시간 >Java의 메소드 오버로딩 및 변수 범위 소개

Java의 메소드 오버로딩 및 변수 범위 소개

高洛峰
高洛峰원래의
2017-01-19 14:38:331705검색

메소드 오버로딩
위에서 사용된 max 메소드는 int형 데이터에만 적용 가능합니다. 하지만 두 가지 부동 소수점 데이터 유형의 최대값을 얻으려면 어떻게 해야 할까요?
해결책은 다음 코드와 같이 이름은 같지만 매개변수가 다른 다른 메소드를 생성하는 것입니다.

public static double max(double num1, double num2) {
 if (num1 > num2)
  return num1;
 else
  return num2;
}

max 메소드를 호출할 때 int 매개변수를 전달하는 경우, 그런 다음 int 유형 매개변수의 max 메소드가 호출됩니다.
double 유형 매개변수가 전달되면 메소드 오버로딩이라고 하는 double 유형 max 메소드 본문이 호출됩니다. 이름은 같지만 매개변수 목록이 다릅니다.
Java 컴파일러는 메소드 서명을 기반으로 어떤 메소드를 호출해야 하는지 결정합니다.
메서드 오버로딩을 사용하면 프로그램을 더 명확하고 읽기 쉽게 만들 수 있습니다. 밀접하게 관련된 작업을 수행하는 메서드는 동일한 이름을 사용해야 합니다.
오버로드된 메서드에는 다른 매개변수 목록이 있어야 합니다. 수정자 또는 반환 유형만을 기반으로 메서드를 오버로드할 수 없습니다.
변수 범위
변수의 범위는 변수가 참조될 수 있는 프로그램의 일부입니다.
메서드 내에서 정의된 변수를 지역 변수라고 합니다.
지역 변수의 범위는 선언부터 시작하여 이를 포함하는 블록의 끝에서 끝납니다.
지역 변수를 사용하려면 먼저 선언해야 합니다.
메서드의 매개변수 범위는 전체 메서드를 포괄합니다. 매개변수는 실제로 지역 변수입니다.
for 루프의 초기화 부분에서 선언된 변수는 루프 전체에 걸쳐 범위를 갖습니다.
단, 루프 본문에 선언된 변수의 적용 범위는 해당 선언부터 루프 본문 끝까지입니다. 여기에는 아래와 같은 변수 선언이 포함되어 있습니다.

Java의 메소드 오버로딩 및 변수 범위 소개

메서드 내에서 중첩되지 않은 다른 블록에서 동일한 이름을 가진 지역 변수를 여러 번 선언할 수 있지만 선언할 수는 없습니다. 중첩된 블록 안에 지역 변수가 두 번 있습니다.

자바의 메소드 오버로딩과 변수 범위 소개에 대한 더 많은 글은 PHP 중국어 홈페이지를 주목해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.