패키지
·
자바/기본적인 개념
1. 패키지란? - 패키지에는 클래스 또는 인터페이스를 포함시킬 수 있으며, 서로 관련된 클래스들끼리 그룹 단위로 묶어 놓음으로써 클래스를 효율적으로 관리할 수 있다. - 같은 이름의 클래스 일지라도 서로 다른 패키지에 존재하는 것이 가능하므로, 이름이 충돌하는 것을 피할 수 있다. 2. 패키지의 규칙 (1) 하나의 소스 파일에는 첫 번째 문장으로 단 한 번의 패키지 선언만을 허용한다. (*첫 번째 문장은 반드시 주석과 공백을 제외한 곳이여야 한다.) (2) 모든 클래스는 반드시 하나의 패키지에 속해야 한다. (3) 패키지는 점(.)을 구분자로 하여 계층 구조를 구성할 수 있다. (4) 패키지는 물리적으로 클래스 파일(.class)을 포함하는 하나의 디렉토리이다. (5) 이름은 대소문자로 이용하지만, 소..
super
·
자바/기본적인 개념
1. super란? (1) 자손 클래스에서 조상 클래스로부터 상속받은 멤버를 참조하는데 사용되는 참조 변수이다. (2) 멤버 변수와 지역 변수가 이름이 같을 때 this를 사용하는 것처럼, super 또한 조상 클래스에서의 멤버 변수와 자손 클래스의 멤버 변수와 이름이 같을 때 사용된다. (3) 모든 인스턴스 메서드에는 자신이 속한 인스턴스의 주소가 지역 변수로 저장되는데, 이것이 참조변수 this와 super의 값이 된다. (4) this와 마찬가지로 super는 static 메서드에서 사용할 수 없다. 즉, 인스턴스 메서드에서만 사용이 가능하다. 2. super() (1) this()와 마찬가지로 super() 역시 생성자이다. (2) this()는 자신의 클래스에서 다른 생성자를 부르지만, supe..
오버라이딩
·
자바/기본적인 개념
1. 오버라이딩이란? - 조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것을 말한다. - override는 사전적 의미로 '~위에 덮어쓰다'로 해석된다. 2. 오버라이딩 조건 (1) 조상 클래스의 메소드와 이름이 같아야 한다. (2) 조상 클래스의 메소드와 매개변수가 같아야 한다. (3) 조상 클래스의 메소드와 반환타입이 같아야 한다. (4) 조상 클래스의 메소드의 접근 제어자의 범위보다 같거나 커야 한다. ( *접근 제어자 범위 순서: public > protected > (default) > private ) (5) 조상 클래스의 메서드의 예외의 수보다 같거나 적어야 한다. (6) 조상의 인스턴스 메서드를 자손에서 static 메서드로 또는 그 반대로 변경할 수 없다. Q) 만약 조상 stati..
상속
·
자바/기본적인 개념
1. 상속을 씀으로써 얻을 수 있는 기대효과 (1) 코드의 재사용성을 높이고 코드의 중복성을 제거할 수 있다. (2) 프로그램의 생산성과 유지보수에 크게 기여된다. 2. 부모와 아이 - 부모는 조상, 상위, 기반 클래스라고도 불리어진다. - 아이는 자손, 하위, 파생된 클래스라고도 불리어진다. ( age는 부모에서 생성된 age이다. ) ( 이처럼 age는 아이에게 포함되므로 부모에서 정의한 것을 같이 사용할 수 있다. ) 3. 상속될 때 규칙 (1) 생성자와 초기화 블럭은 상속되지 않는다. 맴버만 상속될 수 있다. (2) 항상 상위 클래스보다 하위클래스는 같거나 많은 맴버를 갖는다. 4. 간접적인 상속 관계 ( GrandChild와 Parent 관계가 있을 때, 우리는 간접적인 상속 관계라고 부른다. ..