본문 바로가기
728x90
반응형

전체 목록53

자바 정리 - String 클래스 String 클래스 - 매우 중요 문자열을 생성하는 방법, 추출, 비교, 찾기, 분리, 변환 등을 제공하는 메소드 리턴 타입 메소드 이름(매개 변수) 설명 char charAt(int index) 특정 위치의 문자를 리턴 boolean equals(Object anObject) 두 문자열 비교 byte[] getBytes() byte[]로 리턴 byte[] getBytes(Charset charset) 주어진 문자셋으로 인코딩한 byte[]로 리턴 int indexOf(String str) 문자열 내에서 주어진 문자열의 위치를 리턴 int length() 총 문자의 수를 리턴 String replace(CharSequence target, CharSequence replacement) target 부분을.. 2021. 11. 30.
자바 정리 - 기본 API 클래스, System 클래스, Class 클래스 기본 API 클래스 java.lang 패키지 Object 클래스 모든 클래스는 Object 클래스의 자식이거나 자손 클래스 clone() : 객체를 복제할 때 사용 finalize() : 객체가 소멸될 때 호출됨 객체 비교(equals()) equals()의 매개 타입은 Object로, 모든 객체가 매개갑승로 대입될 수 있음. Object 클래스의 equals() 메소드는 비교 연산자인 == 와 동일 결과 리턴 equals() 메소드는 두 객체가 논리적으로 동등하면 true, 그렇지 않으면 false 리턴 equals() 메소드는 매개값이 기준 객체와 동일 타입 객체인지 먼저 확인 필요 객체 해시코드(hashCode()) 객체를 식별하는 하나의 정수값 Object 클래스의 객체 해시코드 메소드는 객체 메.. 2021. 11. 30.
자바 정리 - 익명객체, 예외처리 익명 객체 익명 자식 객체 : 자식 클래스가 재사용되지 앟고 오로지 특정 위치에서 사용할 경우라면 자식 클래스를 명시적으로 선언하는 것은 귀찮은 작업이 됨. 이 경우 익명 자식 객체를 생성해 사용 익명 자식 객체 생성 방법 부모클래스 [필드|변수] = new 부모클래스(매개값, …) { // 필드 // 메소드 }; 익명 구현 객체 : 구현 클래스가 재사용되지 않고 오로지 특정 위치에서 사용할 경우라면 구현 클래스를 명시적으로 선언하는 것은 귀찮음. 이 경우 익명 구현 객체를 생성해서 사용 익명 구현 객체 생성 방법 인터페이스 [필드|변수] = new 인터페이스( ) { // 인터페이스에 선언된 추상 메소드의 실체 메소드 선언 // 필드 // 메소드 }; 예외 처리 예외(exception) 사용자의 잘못된.. 2021. 11. 30.
자바 정리 - 중첩클래스(nested class) 중첩클래스(nested class) 클래스 내부에 선언한 클래스 두 클래스의 멤버들을 서로 접근하게 하고, 외부에는 불 필요한 관계 클래스 감춤 코드 복잡성 줄임 멤버 클래스 클래스의 멤버로서 선언되는 중첩 클래스 인스턴스 멤버 클래스 : static 키워드 없이 중첩 선언된 클래스 정적 멤버 클래스 : static 키워드로 선언된 클래스 로컬 클래스 메소드 내부에서 선언되는 중첩 클래스 메소드 실행할 때만 사용되고 메소드 종료되면 사라짐 중첩 인터페이스 클래스의 멤버로 선언된 인터페이스 해당 클래스와 긴밀한 관계 맺는 구현 클래스 만들기 위함 인스턴스 멤버 인터페이스와 정적 멤버 인터페이스 모두 가능 정적 멤버 인터페이스 많이 사용, UI 프로그래밍에서 이벤트를 처리할 목적으로 많이 활용 2021. 11. 30.
자바 정리 - 인터페이스 인터페이스 객체의 사용 방법을 정의한 타입 개발 코드와 객체가 서로 통신하는 접점역할을 함 개발 코드가 인터페이스의 메소드를 호출하면 인터페이스는 객체의 메소드를 호출 구성 멤버 : 상수 필드, 추상 메소드 인터페이스는 필드 선언 불가 (상수 필드 가능) 상수 필드 : 인터페이스의 상수 필드는 기본적으로 public, static, final 특성을 갖음 관례적으로 필드 이름은 모두 대문자로 작성, 선언 시 초기값을 대입 인터페이스도 일반 동작을 정의하는 메소드(default 메소드) 가능 ex) default int getVolume() { } 필드 : 객체 선언 시 같거나, 상위 클래스 추상 메소드 : 인터페이스에 선언된 메소드는 public abstract가 생략되고 메소드 선언부만 있음 구현 클래.. 2021. 11. 30.
자바 정리 - 추상 클래스 추상 클래스 실체 클래스(객체 생성용 클래스)들의 공통적인 특성(필드, 메소드)을 추출하여 선언한 것 추상 클래스와 실체 클래스는 부모, 자식 클래스로서 상속 관계를 가짐 추상 메소드 메소드 선언만 통일하고 실행 내용은 실체 클래스마다 달라야 하는 경우 abstract 키워드로 선언되고 중괄호가 없는 메소드 하위 클래스는 반드시 재정의해서 실행 내용 결정 [public | protected] abstract 리턴타입 메소드 이름(매개변수, …); 복습 개발자들이 프로그래밍 할 때 필요한 것 데이터(변수) 연산자 제어문(조건문, 반복문) 메소드 변수 + 메소드 = 객체 객체 → 추상클래스 → 인터페이스 (클래스) (상속) 추상클래스에서 확장됨 - 필드 - 메소드 - 생성자 ui : 화면 ux : 사용자의 경험 2021. 11. 30.
자바 정리 - 타입 변환과 다형성 타입 변환과 다형성 다형성 : 사용 방법은 동일하지만 다양한 객체를 이용해서 다양한 실행결과가 나오도록 하는 성질 필드의 다형성 필드 타입을 부모 타입으로 선언할 경우 다양한 자식 객체가 저장되어 필드 사용 결과 달라짐 매개 변수의 다형성 : 매개 변수를 부모 타입으로 선언하는 효과 메소드 호출 시 매개값으로 부모 객체 및 모든 자식 객체를 제공할 수 있음 자식의 재정의된 메소드가 호출 -> 다형성 자동 타입 변환 (promotion) 자식 객체를 부모타입 변수에 대입할 때 자동으로 타입 변환 생성한 객체를 초기화 할 때 생성한 타입과 같거나 상위 타입이어야 함 메소드 안에 매개변수에 선언된 타입이 있을 때 같은 타입이거나, 하위 타입이여야 함 강제 타입 변환 (casting) 부모 타입을 자식 타입으로.. 2021. 11. 30.
자바 정리 - 상속 상속 추상화의 3요소 : 상속, 다형성, 캡슐화 상속 상속 : 이미 잘 개발된 클래스를 재사용해서 새로운 클래스를 만들기 때문에 중복되는 코드를 줄여줌 클래스 상속 : 자식 클래스를 선언 할 때 어떤 부모 클래스를 상속받을 것인지 선택 ex) class 자식클래스 extends 부모클래스 { // 필드 // 생성자 // 메소드 } 상속의 특징 여러 개의 부모 클래스 상속 불가능 extends 뒤에는 단 하나의 부모클래스만 가능 private 접근 제한을 갖는 필드와 메소드는 상속 대상에서 제외 부모 클래스와 자식 클래스가 다른 패키지에 조내한다면 default 접근 제한을 가는 필드와 메소드도 상속 대상에서 제외 super( ) : 부모의 기본 생성자를 호출 자식 클래스에서 부모 클래스의 메소드를 재정의.. 2021. 11. 30.
자바 정리 - 인스턴스 멤버와 정적 멤버 인스턴스 멤버와 정적 멤버 클래스에 선언된 필드와 메소드가 모두 객체 내부에 포함되는 것은 아님. 객체가 있어야 사용 가능한 멤버가 있고, 그렇지 않는 멤버도 있음 인스턴스 멤버 : 객체마다 가지고 있는 멤버 인스턴스 필드 : 힙 영역의 객체마다 가지고 있는 멤버, 객체마다 다른 데이터를 저장 인스턴스 메소드 : 객체가 있어야 호출 가능한 메소드 클래스 코드(메소드 영역)에 위치하지만, 이해하기 쉽도록 객체마다 가지고 있는 메소드 this : 클래스를 메모리에 올렸을 때 인스턴스, 객체 자기 자신을 가리킬 때 정적 멤버(static) : 객체와 상관없는 멤버 클래스 코드(메소드 영역)에 위치 정적 필드 및 상수 : 객체 없이 클래스만으로도 사용 가능한 필드 정적 메소드 : 객체가 없이 클래스만으로도 호출.. 2021. 11. 30.
728x90
반응형