차례:
비디오: 자바 가위바위보 게임 애니메이션 만들기 [자바 안드로이드 가위바위보 게임 - 변수, 조건문, 메소드 #4-1] 2024
여기에 큰 뉴스가 있습니다! 다른 클래스 안에 클래스를 정의 할 수 있습니다! 이것은 Android 앱 개발자에게 편리합니다. 대부분의 클래스는 다른 클래스 안에 살지 않으며 대부분의 클래스는 다른 클래스를 포함하지 않습니다. 그러나 한 클래스 뒤에 숨어있는 아이디어가 다른 클래스의 일부로 비명을 지르면 클래스 내에 클래스를 만들 수 있습니다.
명명 된 내부 클래스
이 코드에서 MyActivity 클래스에는 자체 MyListener 클래스가 들어 있습니다.
package com. allmycode. 견본; 안드로이드 가져 오기. 앱. 활동; 안드로이드 가져 오기. OS. 묶음; 안드로이드 가져 오기. 전망. 전망; 안드로이드 가져 오기. 전망. 전망. OnClickListener; 안드로이드 가져 오기. 위젯. 단추; 공용 클래스 MyActivity extends Activity {Button 단추; @Override public void onCreate (Bundle savedInstanceState) {super. onCreate (savedInstanceState); setContentView (레이아웃 메인); 버튼 = ((버튼) findViewById (버튼 1)); 단추. 클래스 MyListener는 OnClickListener를 구현합니다. @Override public void onClick (View arg0) {button. }}} MyListener 클래스는 내부 클래스입니다.
내부 클래스는 다른 클래스와 매우 비슷합니다. 그러나 내부 클래스의 코드 내에서 둘러싸는 클래스의 필드를 참조 할 수 있습니다. 예를 들어 MyListener 내의 onClick 메서드는 이름 버튼을 사용하고 버튼은 MyActivity 클래스에서 정의됩니다.
익명 내부 클래스가 생깁니다.
다음 코드는 어떻게 작동하는지 보여줍니다.
새 OnClickListener (새 OnClickListener () { 오버 라이드 public void onClick (보기 arg0) {button. > 내부 클래스는 onClick 메서드와 같은 이벤트 처리기와 같은 것들에 유용합니다.익명의 내부 클래스에 대한 가장 어려운 점은 괄호, 중괄호 및 들여 쓰기를 추적하는 것입니다. 여기에 몇 가지 조언이 있습니다. 내부 클래스없이 코드를 작성하는 것으로 시작하십시오. 나중에 일반 자바 클래스에 지루해지면 평범한 클래스 중 일부를 내부 클래스로 변경하여 실험 해보십시오.