JAVA 4

자바의 정석(기초편) -ch7. 객체지향프로그래밍 Ⅱ-(3)

6) 추상클래스 추상클래스 : 미완성 설계도. 인스턴스 생성 불가하다. 상속을 통해 자손클래스에 의해서 완성된다. ex) TV는 기능의 차이에 따라 여러 종류의 모델이 있지만, 이들의 설계도는 아마 90%는 동일할 것이다. 서로 다른 세 개의 TV가 있으면 세개 각각 설계도를 그리는 것보다 공통부분만을 그린 미완성 설계도를 만들어 놓고, 이 미완성 설계도를 이용해서 각각의 설계도를 완성하는 것이 효율적이다. 여기서 미완성 설계도가 추상클래스이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 abstract class Unit{ int x, y; a..

JAVA 2022.07.30

자바의 정석(기초편) -ch7. 객체지향프로그래밍 Ⅱ-(2)

4) 제어자(modifier) 제어자 : 클래스, 변수 또는 메서드의 선언부에 함께 사용되어 부가적인 의미를 부여함. 접근제어자 : public, protected, (default), private ➔ 한 번에 하나만 쓰임. 그 외 : static, final, abstract, native, transient, synchronized ... ➔ 여러 제어자 조합 사용 가능. (그 외에서는 주로 static, final, abstract만 쓰인다.) static 클래스의, 공통적인 인스턴스 생성하지 않고 사용 가능함. (편리하고 빠름) 맴버변수, 메서드, 초기화블럭 fianl 마지막의, 변경될 수 없는 변수에 사용하면 값을 변경할 수 없는 상수. 매서드에 사용되면 오버라이딩 불가 클래스에 사용되면 자신..

JAVA 2022.07.28

자바의 정석(기초편) - ch7. 객체지향프로그래밍Ⅱ-(1)

1) 상속 상속 : 기존 클래스를 재사용해서 새로운 클래스를 작성하는 것 class Child extends Parent { } ➔ Child는 Parent를 상속받는다. 클래스는 멤버들의 집합이며 자손 클래스는 조상 클래스의 모든 멤버를 상속받기 때문에 Child 클래스는 Parent 클래스의 멤버들을 포함한다.(생성자, 초기화블럭 제외) 포함 : 한 클래스의 멤버변수로 다른 클래스 타입의 참조변수를 선언하는 것 class Circle { Point c = new Point(); } ➔ Circle는 Point를 포함한다. 상속과 포함은 얼핏 보면 비슷하다. 그렇다면 상속관계를 맺어줄지, 포함관계를 맺어줄지 애매할 때는 어떻게 정할까? ➔ '~은 ~이다(is-a)'와 '~은 ~을 가지고 있다(has-a..

JAVA 2022.07.27

자바의 정석(기초편) - Ch6. 객체지향프로그래밍Ⅰ정리

자바의 정석(기초편) CHAPTER6. 객체지향프로그래밍 Ⅰ을 읽으며 헷갈리는 부분, 몰랐던 부분들을 정리해봤다. 글의 모든 내용, 문장, 코드는 『자바의 정석(기초편)』, 도우출판, 남궁성 을 기반으로 한다. 객체지향개념 Ⅰ, Ⅱ 목차 객체지향프로그래밍 Ⅰ 객체지향프로그래밍 Ⅱ 1) 객체지향언어란? 1) 상속 2) 클래스와 객체 2) 오버라이딩 3) 변수와 메서드 3) package 와 import 4) 메서드 오버로딩 4) 제어자 5) 생성자 5) 다형성 6) 변수의 초기화 6) 추상클래스 7) 인터페이스 1) 객체지향언어란? 객체지향언어의 장점 : 코드의 재사용성이 높고 유지보수가 용이하다. 2) 클래스와 객체 클래스 : 객체를 정의 해놓은 설계도. 객체를 생성한다. ex) 제품 설계도, 붕어빵 기..

JAVA 2022.07.25