1.1 객체지향언어의 역사기본 개념은 ‘실제 세계는 사물(객체)로 이루어져 있으며, 발생하는 모든 사건들은 사물간의 상호작용이다.객체지향이론은 상속, 캡슐화, 추상화 개념을 중심으로 점차 구체적으로 발전.1.2 객체지향언어코드 간에 서로 관계를 맺어 줌으로써 보다 유기
2.1 클래스와 객체의 정의와 용도클래스의 정의 : 객체를 정의해 놓은 것이다.클래스의 용도 : 클래스는 객체를 생성하는데 사용된다.객체의 정의 : 실제로 존재하는 것. 사물 또는 개념객체의 용도 : 객체가 가지고 있는 기능과 속성에 따라 다름.유형의 객체 : 책상,
변수는 클래스변수, 인스턴스변수, 지역변수 세 종류이다.변수의 종류를 결정짓는 요소는 '변수의 선언된 위치'이다.멤벼변수를 제외한 나머지 변수들은 모두 지역변수이며, 멤버변수 중 static이 붙은 것은 클래스변수, 붙지 않은 것은 인스턴스 변수이다.아래의 iv와 cv
한 클래스 내에 같은 이름의 메서드를 여러 개 정의하는 것을 '오버로딩'이라고 한다.메서드 이름이 같아야 한다.매개변수의 개수 또는 타입이 달라야 한다.!! 반환타입은 오버로딩을 구현하는데 아무런 영향을 주지 못한다!!하나의 이름으로 정의 된다면, 기억하기도 쉽고 이름
생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드'이다.인스턴스변수의 초기화 작업에 사용.클래스 내에 선언되며, 메서드와 유사하지만 리턴값이 없다.→ 1. 생성자의 이름은 클래스의 이름과 같아야 한다.생성자는 리턴값이 없다.Card클래스로 예를 들어보자사
변수를 선언하고 처음으로 값을 저장하는 것을 '변수의 초기화'라고 한다."멤버변수(클래스변수와 인스턴수변수)와 배열의 초기화는 선택적이지만,지역변수의 초기화는 필수적이다."멤버변수의 초기화 방법명시적 초기화생성자초기화 블럭→ 인스턴스 초기화 블럭 : 인스턴스변수를 초기
상속이란, 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것이다.코드를 공통적으로 관리할 수 있기 때문의 추가 및 변경이 용이하다.코드의 재사용성을 높이고 중복을 제거하여 생산성과 유지보수에 기여함.조상 클래스 : 부모(parent)클래스, 상위(super)클래스
조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것.자손 클래스에서 오버라이딩하는 메서드는 조상 클래스의 메서드와이름이 같아야 한다.매개변수가 같아야 한다.반환타입이 같아야 한다.→ 요약하자면 선언부가 서로 일치해야 함. 다만, 접근 제어자와 예외는 제한된 조건 하
접근 제어자 : public, protected, default, private그 외 : static, final, abstract, native, transient, synchrinized, volatile, strictfp접근 제어자는 한 번에 네
조상타입의 참조변수로 자손타입의 인스턴스를 참조할 수 있다.반대로 자손타입의 참조변수로 조상타입의 인스턴스를 참조할 수는 없다.자손타입 → 조상타입(Up-casting) : 형변환 생략가능자손타입 ← 조상타입(Down-casting) : 형변환 생략불가Car
추상클래스는 인스턴스는 생성할 수 없다. 상속을 통해, 자손클래스의 의해서만 완성될 수 있다.새로운 클래스를 작성하는데 있어서 바탕이 되는 조상클래스로서 의미를 갖는다.선언부만 작성하고 구현부는 작성하지 않은 채로 남겨 둔 것.메서드를 미완성 상태로 남겨 놓는 이유는
일종의 추상클래스.추상메서드를 갖지만, 추상화 정도가 높아서 추상클래스와 달리 몸통을 갖춘 일반 메서드 또는 멤버변수를 구성원으로 가질 수 없다.오직 추상메서드와 상수만을 멤버로 가질 수 있으며, 그 외의 다른 어떠한 요소도 허용하지 않는다.다른 클래스를 작성하는데 도
내부 클래스는 클래스 내에 선언된 클래스이다.두 클래스가 서로 긴밀한 관계에 있기 때문에 선언한다.내부 클래스의 장점내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근할 수 있다.코드의 복잡성을 줄일 수 있다.(캡슐화)이름이 없다.클래스의 선언과 객체의 생성을 동시에 하
‘데이터 군을 저장하는 클래스들을 표준화한 설계’ 즉, 표준화된 프로그래밍 방식을 의미List와 Set의 조상인 Collection 인터페이스에는 다음과 같은 메서드들이 정의되어 있다.컬렉션 클래스에 저장된 데이터를 읽고, 추가하고 삭제하는 등 가장 기본적인 메서드 다
기본 타입 변수 → 실제 값을 변수 안에 저장참조 타입 변수 → 주소를 통해 객체 참조OS에서 할당 받은 메모리 영역을 세 영역으로 구분메소드 영역JVM 시작할 때 생성로딩된 클래스 바이트 코드 내용을 분석 후 저장모든 스레드가 공유힙 영역JVM 시작할 때 생성객체,
자료형Castingfinal, staticif(), switch()for(), while(), do-while()ArrayMethodOverload, OverridingClassObjectPolymorphism접근 지정자ConstructorInheritancesuper