본문 바로가기

반응형

자바

(4)
생성자, Constructor 이전의 글에서 클래스, 객체지향이 무엇인가에 대해 다뤘습니다. 그리고 클래스의 객체를 정의하고 객체를 생성할 때 사용한다고 언급했습니다. 이 객체를 생성할 때 사용하는 것이 바로 생성자입니다. 생성자의 구조는 메서드와 비슷합니다. void나 리턴타입이 존재하지 않고 클래스명과 동일한 이름 가지게 됩니다. lecture_constructor con = new lecture_constructor(); 라는 명령어를 통해 객체를 생성하게 됩니다. 메서드를 수행할 때 명령어를 보면 main에서 ToString();이라는 명령어를 통해 메서드를 실행하게 됩니다. 마찬가지로 new라는 명령어를 통해 객체를 생성하면서 lecture_constructor();라는 메서드와 동일한 생성자를 수행해 객체를 만들게 됩니다...
오버로딩, 오버라이딩 이전에 상속에 대해 알아보고 식별자 this와 super에 대해서도 알아봤습니다. 이번 글에서는 오버 라이딩과 오버 로딩에 대해 알아보려 합니다. 먼저 오버로딩에 대해 알아보겠습니다. 과적하다는 사전적 의미가 있지만 전혀 와 닿지 않아 보입니다. A4 용지를 예로 설명해 보려 합니다. 여기에 똑같은 A4 용지가 각 케이스별로 들어있습니다. 그런데 노란색 케이스에 든 종이는 숫자만 쓸 수 있고 빨간색 케이스에 든 종이에는 문자만 파란색 케이스에는 든 종이는 특수문자만 쓸 수 있다고 정말 어이없는 상황일 거 같습니다. 숫자를 쓰려고 종이를 가져가려다가 실수로 빨간색 케이스에서 꺼낸다면 다시 노란색 케이스에 든 종이를 가지러 가야 할 것입니다. 마 친가지로 A4()라는 매더스가 있습니다. 이 매머드는 매개변수..
상속, this, super 자식 클래스가 부모 클래스를 상속받게 되었을 때 둘 다 동일한 타입과 이름의 변수가 존재하거나 매서드들이 오버 라이딩되어버리면 더 이상 부모의 것이 아닌 자식의 성분이 되어버립니다. 그래서 부모의 것, 자식의 것을 구분 짓기 위한 식별자 this와 super에 대해 알아보려고 합니다. 이번에는 child(name, number) 를 통해 이름과 나이가 입력된 객체를 선언하겠습니다. child child2 = new child("Chris",20); 로 자식객체 하나를 만들었습니다. 그런데 부모의 이름과 나이 역시 자식과 동일하게 Chris, 20살이 되어버렸습니다. 일단 복습하자면 자식 생성자가 생성될 때는 부모의 객체를 먼저 생성한다고 했습니다. 아무것도 입력되어 있지 않으면 super(); 가 호출됩..
상속 이른바 객체지향 언어라고 불리는 자바를 공부해보려고 합니다. 기본적인 문법은 배제하고 자바의 주요 특징인 객체지향이 무엇인지 개념적인 이해 위주로 공부해 보려고 합니다. 객체지향의 언어 바의 주요 특징중 하나인 상속에 대해 알아보도록 하겠습니다. 문자 그대로 부모님의 재산을 물려받아 내 것이 된다는 의미로서 자바에서는 부모 클래스 내의 존재하는 모든 것들을 모두 이어받어 자식 클래스 내에서 사용 가능하다는 것을 의미합니다. 부모 클래스인 pa 입니다. 생성자 pa(), pa(name, number)를 통해 객체를 생산할 수 있고 changeVariable 메서드를 통해 인스턴스 변수 name과 number를 설정할 수 있습니다. 부모 클래스를 상속받은 자식 클래스 child 입니다. 3가지 생성자 chi..

반응형