본문 바로가기

전체 글141

super & super() super = this (lv와 iv 구별) 조상 맴버를 자신의 맴버와 구별 할 때 사용합니다 super() 조상 클래스의 생성자를 호출하는데 사용됩니다. Object 클래스를 제외한 모든 클래스의 생성자 첫 줄에 생성자를 호출해야 됩니다. 그렇지 않으면 컴파일러가 자동적으로 super();를 생성자의 첫줄에 삽입합니다. class PointTest { public static void main(String[] args) { Point3D = p3 = new Point3D(); } } class Point { int x; int y; Point (int x, int y) { this.x = x; this.y = y; } } class Point3D extends Point { int z; Point3D(.. 2023. 2. 23.
상속 기존 클래스를 재사용하여 새로운 클래스를 작성 하는 것입니다. 장점으로 코드 재사용 부모자식 관계 맺어줍니다 맴버만 상속 받습니다 조상 클래스 : 부모(parent)클래스, 상위(super)클래스, 기반(base)클래스 자손 클래스 : 자식(child)클래스, 하위(sub)클래스, 파생된(derived)클래스 자손 클래스는 조상클래스의 모든 맴버를 상속 받습니다. 자손의 변경은 조상에 영향을 받지 않습니다. 부모가 변경되면 자식까지 변경됩니다. 자손의 멤버개수는 조상보다 적을수 없습니다. class Child extends Parent{ //..... } 기존에 부모 클래스가 존재하고 extends라는 키워드를 사용해서 자식 클래스와 관계를 맺습니다 클래스간의 관계 결정하기 상속 관계 : 원(Circle.. 2023. 2. 23.
변수의 초기화 변수를 선언하고 처음으로 값을 저장하는 것입니다 맴버 변수 : (클래스 변수와 인스턴스 변수)와 배열의 초기화 → 선택적 지역 변수: 사용하기 전 반드시 초기화 → 필수적 각 Type의 기본값(default value) 자료형기본값 boolean false char '\u0000' byte, short, int 0 long 0L float 0.0f double 0.0d 또는 0.0 참조형 변수 null 명시적 초기화 class Car{ int door = 4; // 기본형(primitive type) 변수 초기화 Engine e = new Engine(); // 참조형(reference type) 변수 초기화 } 기본형 변수 초기화 '=' 는 간단 초기화입니다. 참조형 변수 초기화는 객체를 만들어야합니다.. 2023. 2. 23.
생성자 생성자 인스턴스(객체 iv묶음) 초기화 메서드 입니다 1.생성자의 이름은 클래스의 이름과 같아야 합니다 2.생성자는 리턴 값이 없습니다(void 가 안붙습니다.)(모든 클래스는 반드시 생성자를 가져야 합니다.) 3. 생성자도 오버로딩이 가능하므로 하나의 클래스에 여러개의 생성자가 존재할 수 있습니다. Time t = new Time(); t.hour =12; t.minute=34; t. second=56; time = new Time(12,34,56);//생성자로 이렇게 기본 생성자 지금까지는 생성자를 모르고도 프로그래밍을 해 왔지만 사실 모든 클래스에는 반드시 하나 이상의 생성자가 정의되어 있어야 합니다 그러나 지금까지 클래스에 생성자를 정의하지 않고도 인스턴스를 생성할 수 있었던 이유는 컴파일러가 제.. 2023. 2. 22.