java 학습 노트(10)

1: 형식 매개 변수와 반환 값의 문제(이해)(1) 형식 매개 변수: 클래스 이름: 이 클래스의 대상 추상적 클래스 이름이 필요합니다. 이 클래스의 하위 클래스 대상 인터페이스 이름이 필요합니다. 이 인터페이스의 실현 클래스 대상(2) 반환 값 형식: 클래스 이름: 이 클래스의 대상 추상적 클래스 이름이 필요합니다. 반환된 것은 이 클래스의 하위 클래스 대상 인터페이스 이름입니다. 반환된 것은 이 인터페이스의 실현 클래스 대상(3) 체인 프로그래밍 대상입니다.방법1().방법2()...방법n();
이런 용법: 사실 방법 1()이 호출된 후에 하나의 대상이 되어야 한다.방법2 () 호출이 완료되면 대상을 되돌려야 합니다.방법 n () 호출이 완료되면 대상일 수도 있고 대상이 아닐 수도 있습니다.
2: 패키지(이해)(1)는 사실 폴더(2)작용이다. A:동명의 클래스를 구분한다. B:클래스에 대해 분류 관리를 한다. a: 기능에 따라 b: 모듈에 따라 패키지의 정의(파악)package 패키지 이름.
다단계 보증.헤어지다(4) 주의사항: (파악) A:package 문장은 반드시 파일의 첫 번째 유효 문장이어야 한다. B:한 자바 파일에 하나의 패키지 C만 있을 수 있다. 패키지가 없으면 기본적으로 패키지 이름이 없는 (5) 패키지가 있는 컴파일과 실행이다. A:수동식 B:자동식(파악)javac-d.HelloWorld.java
3: 패키지 가이드 (파악) (1) 우리는 패키지가 있는 클래스를 여러 번 사용해서 매우 번거롭다. 이때 자바는 키워드 import을 제공했다.(2) 형식: import 패키지 이름... 클래스 이름;다른 이름: import 패키지 이름...*;(권장하지 않음) (3) 패키지, import, class의 순서 패키지 > import > class
4: 권한 수정자(파악) (1) 권한 수정자는 같은 가방 아래 다른 가방 아래의 하위 클래스와 다른 가방 아래의 무관 클래스 private Y 기본 Y y protected Y Y public Y Y Y Y Y (2) 이 네 가지 권한 수정자는 언제든지 하나만 나타날 수 있습니다.public class Demo {}
5: 흔한 수식자(이해) (1) 분류: 권한 수식자:private, 기본값, 보호자,public 상태 수식자:static,final 추상 수식자:abstract(2) 흔한 클래스와 그 구성된 수식자:기본값,public,final,abstract에서 자주 사용하는:public 구성원 변수:private,기본값,protectec,public,static,final
일반: private
구조 방법:private, 기본값,protected,public
자주 사용하는:public 구성원 방법:private, 기본값,protected,public,static,final,abstract에서 자주 사용하는:public(3) 그리고 비교적 흔히 볼 수 있는:public static final int X = 10;public static void show() {} public final void show() {} public abstract void show();
6: 내부 클래스(이해)(1) 클래스를 다른 클래스의 내부에 정의하면 이 클래스를 내부 클래스라고 부른다.예를 들어 클래스 B를 클래스 A에 정의하면 클래스 B는 내부 클래스라고 부른다.(2) 내부 클래스의 접근 규칙 A: 외부 클래스의 구성원을 직접 방문할 수 있다. 개인 B:외부 클래스를 포함하여 내부 클래스 구성원을 방문하려면 대상 (3) 내부 클래스의 분류를 만들어야 한다. A: 구성원 내부 클래스 B: 국부 내부 클래스(4) 구성원 내부 클래스 A:private 데이터의 안전성을 위해 B:static 접근의 편의성을 위해
구성원 내부 클래스는 정적: 외부 클래스 이름이 아닙니다.내부 클래스 이름 대상 이름 = new 외부 클래스 이름.new 내부 클래스 ();구성원 내부 클래스는 정적: 외부 클래스 이름입니다.내부 클래스 이름 대상 이름 = new 외부 클래스 이름.내부 클래스();(5) 구성원 내부 유형의 면접문제(빈칸 채우기) 30,20,10
class Outer {
			public int num = 10;
			
			class Inner {
				public int num = 20;
				
				public viod show() {
					int num  = 30;
					
					System.out.println(num);
					System.out.println(this.num);
					System.out.println(Outer.this.num);
				}
			}
		}
	

(6) 국부 내부 클래스 A: 국부 내부 클래스가 국부 변수에 접근하려면final 수식을 해야 한다.B:왜요?국부 변수는 사용이 끝나면 사라지고 메모리에 쌓인 데이터는 즉각 사라지지 않기 때문이다.그래서 메모리를 쌓는 데는 이 변수를 사용하지만 변경량은 이미 없어졌다.이 값이 존재하기 위해final 수식을 추가합니다.역컴파일 도구를 통해final을 넣은 후 메모리에 변수 이름이 아닌 값을 직접 저장하는 것을 알 수 있습니다.(7) 익명 내부 클래스(파악) A: 국부 내부 클래스의 간소화 형식입니다. B: 하나의 클래스나 인터페이스가 존재하는 것을 전제합니다. C: 형식: new 클래스 이름이나 인터페이스 이름() {다시 쓰는 방법;D:본질: 사실은 이 클래스를 계승하거나 인터페이스를 실현하는 하위 클래스 익명 대상(8) 익명 내부 클래스가 개발에서 사용될 때 추상 클래스나 인터페이스를 매개 변수로 볼 수 있다.이때 우리는 실제 필요한 것이 하위 유형의 대상이라는 것을 안다.만약 이 방법이 단지 한 번만 호출된다면, 우리는 익명 내부 클래스의 형식을 간소화할 수 있다.
	interface Person {
			public abstract void study();
		}
		
		class PersonDemo {
			public void method(Person p) {
				p.study();
			}
		}
		
		class PersonTest {
			public static void main(String[] args) {
				PersonDemo pd = new PersonDemo();
				pd.method(new Person() {
					public void study() {
						System.out.println("    ,    ");
					}
				});
			}
		}
(9)         (    )
	interface Inter {
		void show();
	}
	
	class Outer {
		//    
		public static Inter method() {
			return new Inter() {
				public void show() {
					System.out.println("HelloWorld");
				}	
			};
		}
	}
	
	class OuterDemo {
		public static void main(String[] args) {
			Outer.method().show(); //"HelloWorld"
		}
	}

좋은 웹페이지 즐겨찾기