본문 바로가기

분류 전체보기259

java 9일차 _05. 인터페이스 5. 인터페이스 ( interface ) 1) 문법: public interface 인터페이스명 { int NUM = 20; // public static final int NUM = 20; 동일 abstract void a( ); // default 가 아니고 public void b( ); // public abstract void b( ) 동일 } 인터페이스명.java 로 저장됨 2) 구성요소 4가지: - 상수: final int NUM = 20; ==> public static final 지정자가 자동으로 지정된다. ==> 접근은 인터페이스명.상수명 으로 사용한다. ( 인터페이스.NUM ) - default 메서드 ==> public default 리턴타입 메서드명 ( [변수,...] ) { 실행.. 2024. 3. 20.
java 9일차 _ 04. 추상클래스(2) 3) 특징 - 불완전한 클래스이다. 따라서 객체생성이 불가능하다. ( new 불가 ) - 불완전한 클래스인 자신은 인스턴스가 안되지만 상속을 통해서 자식 클래스를 이용해서 추상클래스의 구성요소를 인스턴스화 할 수 있다. => 문법: 추상클래스: public abstract class AAA { - 변수 - 생성자 - 메서드 - 추상메서드: public abstract void a ( ); } AAA x = new AAA( ); // 에러발생 자식클래스: public class BBB extends AAA { // 부모의 변수 사용 // 부모의 메서드 사용 // 부모의 생성자 사용불가 ( 생성자는 상속안됨 ) // 부모의 추상메서를 반드시 오버라이딩( overriding ) 해야하는 제약이 붙는다. 만약에.. 2024. 3. 20.
java 9일차 _04. 추상클래스 4. 추상클래스 ( abstract class ) 1) 문법: public abstract class 클래스명 { } 2) 구성요소: - 변수 - 생성자 - 메서드 ( concrete method ) : { } 를 가져서 기능이 정해짐. ex) public void a ( ) { 실행문; } - 추상메서드 ( abstract method ) : { } 를 지정안함. 기능이 미지정된 상태. 나중에 지정됨. ex) public abstract void a ( ); // abstract 키워드 필수. => 추상클래스는 추상 메서드를 가질수도 있다. 추상 메서드를 가지면 반드시 추상클래스로 만들어야 된다. package exam15_추상클래스; // 추상 클래스 abstract class AAA { int n;.. 2024. 3. 20.
java 9일차 _03. 접근지정자 3. 접근지정자( access modifier ) 1) 용도: 클래스들간의 접근(참조)을 제한하는 방법. 2) 4가지 레벨 UML표기법 (+) (#) (-) public protected (default) private ----------------------------------------------------------------------------------------------- 같은클래스인경우 : 가능 가능 가능 가능 같은패키지의 다른클래스: 가능 가능 가능 불가 다른패키지의 상속관계: 가능 가능 불가 불가 다른패키지의 다른클래스: 가능 불가 불가 불가 1. 같은패키지의 다른클래스 package exam14_접근지정자1_같은패키지; public class Super { // 같은패키지의 다른클.. 2024. 3. 20.