메소드 오버로딩 예제

이 예제에서는 두 가지 메서드를 만들었습니다. 위의 예에서 – 메서드 disp()는 매개 변수 수에 따라 오버로드됩니다 – 이름 디스프가있는 두 가지 메서드가 있지만 매개 변수는 다릅니다. 둘 다 매개 변수의 수가 다릅니다. 더 작은 크기의 데이터 형식이 형식 승격이라고 하는 것보다 더 큰 크기의 데이터 유형으로 승격되는 경우( 예: 바이트 데이터 형식을 짧게 승격할 수 있으며, 짧은 데이터 형식을 int, long, double 등 public double myMethod(int num1)로 승격할 수 있습니다. , int num2) { System.out.println (“클래스 데모의 첫 번째 myMethod”); 반환 num1 + num2; } 공용 플로트 myMethod (int var1, int var2) { System.out.println (“클래스 데모의 두 번째 myMethod”); 반환 var1-var2; } 간단히 말해서, 우리는 두 가지 방법으로 메서드 오버로드를 구현할 수 있습니다 : 이 예에서는 메서드 disp()가 매개 변수의 데이터 형식에 따라 오버로드됩니다 – 우리는 이름 disp(를 가진 두 가지 메서드), char 형식의 매개 변수가있는 메서드 및 매개 변수가있는 다른 메서드가 있습니다. int 유형입니다. 재정의와 오버로드는 Java에서 매우 중요한 두 가지 개념입니다. 그들은 자바 초보 프로그래머에 대한 혼란스럽다. 이 게시물은 두 가지 간단한 예제를 사용하여 차이점을 보여 줍니다. 내가 인수 목록을 말할 때 다시 지점으로 돌아 가자 그것은 메서드가 가지고있는 매개 변수를 의미합니다 : 예를 들어 두 개의 매개 변수를 갖는 메서드 add (int a, int b)의 인수 목록은 메서드 add(int a)의 인수 목록과 다릅니다.

, int b, int c) 세 개의 매개 변수를 갖는. 메서드 오버로드는 이름이 같지만 인수 목록이 다른 클래스에서 두 개 이상의 함수를 정의하는 프로세스입니다. 함수 호출 줄에서 complier는 인수의 형식과 멤버를 사용하여 올바른 호출을 호출합니다. 이 예제에서는 메서드를 호출하기 위한 인스턴스를 만들 필요가 없도록 정적 메서드를 만듭니다. 메서드 본문 : 메서드가 수행하는 메서드를 정의하는 문 컬렉션입니다. 메서드 재정의를 사용하면 기본 클래스에 정의된 메서드에 대해 하위 클래스에서 세분화된 구현을 제공할 수 있습니다. 이러한 세 가지 기술을 접한 적이 없다면 몇 가지 예를 들어 명확하게 해야 합니다. JVM은 주어진 순서대로 실행합니다.

유의 사항: 메서드를 오버로드할 때 JVM은 최소한의 노력을 할 수 있습니다. 이것은 실행하기 위한 가장 게으른 경로의 순서입니다: 다형성은 오버라이드에 적용되며 오버로드에 적용되지 않습니다—-이 문이 잘못되었습니다.