컴퓨터 튜토리얼 컴퓨터 지식 Java의 인터페이스 콜백 메커니즘에 대한 심층 분석

Java의 인터페이스 콜백 메커니즘에 대한 심층 분석

Jan 24, 2024 pm 08:03 PM
어떤 인터페이스 콜백

Java의 인터페이스 콜백 메커니즘에 대한 심층 분석

Java 인터페이스 콜백에 대한 자세한 설명

인터페이스 콜백은 다형성을 구현하는 방법입니다. 인터페이스를 구현하는 클래스의 객체 참조를 인터페이스가 선언한 인터페이스 변수에 할당하여 클래스가 구현한 인터페이스의 메서드를 인터페이스 변수를 통해 호출할 수 있도록 합니다. 이렇게 하는 것은 해당 개체에 인터페이스 콜백이라고도 하는 인터페이스 메서드를 호출하도록 알리는 것과 같습니다. 서로 다른 클래스가 동일한 인터페이스를 사용하는 경우 서로 다른 기능 구현이 있을 수 있습니다. 이는 인터페이스의 메서드 본문이 다를 수 있음을 의미합니다. 따라서 인터페이스 콜백을 통해 다양한 동작을 달성할 수 있습니다.

공개 인터페이스 IntefaceHuidiao {

showMessage();

무효

}

공용 클래스 PC는 IntefaceHuidiao를 구현합니다. {

public void showMessage() {

System.out .println("나는 컴퓨터입니다!");

}

}

공공 클래스 TV는 IntefaceHuidiao를 구현합니다. {

public void showMessage() {

System.out.println ("나는 TV입니다!");

}

}

공개 클래스 TestIntefaceHudiao {

public static void main(String[] args) {

IntefaceHuidiao ms ;

ms = 새 TV();

ms.showMessage();

ms = 새 PC();

ms.showMessage();

}

}

Java가 인터페이스 콜백을 사용하는 이유

구체적으로 설명하는 방법은 특별히 설명하기 쉽지 않을 수도 있습니다....

내가 방금 작성한 프로그램을 보여드리겠습니다...이해하기 쉽습니다...

인터페이스 메시지{

showMessage();

무효

}

클래스 NbMsg는 Msg를 구현합니다.{

public void showMessage() {

System.out.println("123456");

}

}

CahrMsg 클래스가 Msg를 구현합니다.{

public void showMessage() {

System.out.println("abcdef");

}

}

공개수업 시험 {

비공개 메시지 메시지;

공개 무효 쇼() {

System.out.println("뭔가 처리 중")

msg.showMessage();

}

public void setMsg(Msg msg) {

this.msg = msg;

}

public static void main(String[] args) {

테스트 a = 새 테스트();

a.setMsg(new CahrMsg());

a.show();

a.setMsg(new NbMsg());

a.show();

}

}

결과는 다음과 같습니다.

일을 처리해 보세요

abcdef

일을 처리해 보세요

123456

인터페이스가 콜백을 구현할 수 있는 이유

인터페이스 콜백이란 인터페이스를 구현하는 클래스를 사용하여 생성된 객체의 참조를 인터페이스가 선언한 인터페이스 변수에 할당한 다음, 인터페이스 변수가 클래스가 구현한 인터페이스의 메서드를 호출할 수 있다는 것을 의미합니다. 실제로 인터페이스 변수는 클래스에 의해 구현된 인터페이스의 메소드를 호출할 때 해당 객체에게 인터페이스 메소드를 호출하라고 알리는 과정을 객체 함수의 인터페이스 콜백이라고 한다. 아래 예를 참조하세요.

인터페이스 사람들 {

피플리스트();

}

반 학생이 사람을 구현합니다 {

public void peoplelist() {

system.out.println("저는 학생입니다.");

}

}

담임 선생님이 사람을 구현합니다 {

public void peoplelist() {

system.out.println("저는 선생님입니다.");

}

}

공개 수업 예시 {

public static void main(string args[]) {

people a; // 인터페이스 변수 선언

a = new Student(); // 인스턴스화, 객체의 참조는 인터페이스 변수에 저장됩니다

a.peoplelist(); //인터페이스 콜백

a = new Teacher(); // 인스턴스화, 객체의 참조는 인터페이스 변수에 저장됩니다

a.peoplelist(); //인터페이스 콜백

}

}

결과:

저는 학생이에요

저는 선생님이에요

위 내용은 Java의 인터페이스 콜백 메커니즘에 대한 심층 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Windows 오류 코드를 해결하는 방법 'invalid_data_access_trap'; (0x00000004) Windows 오류 코드를 해결하는 방법 'invalid_data_access_trap'; (0x00000004) Mar 11, 2025 am 11:26 AM

Windows 오류 코드를 해결하는 방법 'invalid_data_access_trap'; (0x00000004)

ENE SYS 유지 보수 : 시스템을 원활하게 실행하기위한 팁과 요령 ENE SYS 유지 보수 : 시스템을 원활하게 실행하기위한 팁과 요령 Mar 07, 2025 pm 03:09 PM

ENE SYS 유지 보수 : 시스템을 원활하게 실행하기위한 팁과 요령

ENE SYS 구현 중 피해야 할 5 가지 일반적인 실수 ENE SYS 구현 중 피해야 할 5 가지 일반적인 실수 Mar 07, 2025 pm 03:11 PM

ENE SYS 구현 중 피해야 할 5 가지 일반적인 실수

드라이버 asio.sys로드가없는 이유는 무엇입니까? 드라이버 asio.sys로드가없는 이유는 무엇입니까? Mar 10, 2025 pm 07:58 PM

드라이버 asio.sys로드가없는 이유는 무엇입니까?

Windows 설정에서 Drive Health 경고를 수정하는 방법을 알아보십시오. Windows 설정에서 Drive Health 경고를 수정하는 방법을 알아보십시오. Mar 19, 2025 am 11:10 AM

Windows 설정에서 Drive Health 경고를 수정하는 방법을 알아보십시오.

ENE.SYS를 사용하는 응용 프로그램 ENE.SYS를 사용하는 응용 프로그램 Mar 12, 2025 pm 01:25 PM

ENE.SYS를 사용하는 응용 프로그램

레지스트리를 어떻게 편집합니까? (경고 :주의해서 사용하십시오!) 레지스트리를 어떻게 편집합니까? (경고 :주의해서 사용하십시오!) Mar 21, 2025 pm 07:46 PM

레지스트리를 어떻게 편집합니까? (경고 :주의해서 사용하십시오!)

Cont Open Asio.sys 메시지 Windows 11을 중지하는 방법 Cont Open Asio.sys 메시지 Windows 11을 중지하는 방법 Mar 10, 2025 pm 07:54 PM

Cont Open Asio.sys 메시지 Windows 11을 중지하는 방법

See all articles