10. 객체지향 프로그래밍 (OOP)

class 설계 및 개념

  • class 설계
    1) 코딩레벨
    2) 이클립스 기반

    API 만들기 실습

    // 한줄주석
    / 여러줄 주석 /
    /*
    도큐먼트주석
    /

11. 생성자 (Constructor) 함수

  • 멤버변수의 초기화 담당
  • 클래스명과 동일하다.
  • 리턴타입 없다( void 조차 사용하지 않음 )
  • 중복정의 가능함 ( overload 가능 - 중복함수 )
  • default constructor 갖고 있음
    (단, 사용자가 생성자 함수를 재정의 하면 디폴트 생성자 함수 기능 상실함 )

this : 자기자신, 객체가 생성 될때 그 객체의 시작 주소를 갖고 있다.
this() : 생성자함수(반드시 첫줄에 위치)

12. 상속(inheritance)

  • extends
  • 단일 상속만 지원한다.
  • super
  • 재사용
  • 확장
class PointEx {   // super class
	int x, y;

}

class CircleEx extends PointEx {  // sub class
	int r;

}

public class MainEntry {
	public static void main(String[] args) {
		CircleEx c = new CircleEx();


	}
}

13. abstract class (추상클래스)

미완성 클래스 <--- 자체적으로 객체 생성 할 수 없다.
(단, 상속 받은 자손 클래스로는 객체 생성 할 수 있다 )

추상메소드를 갖고 있다.
public void disp() { } // 일반메소드
publicvoid disp(); // 추상메소드 - 몸체(블럭)를 갖지 않는다.
public abstract void disp();

abstract 
형식>
     abstract public class Point {  // 부모 추상 클래스
		void disp() {   }
		abstract void show(); // 추상메소드
     }

     class Sub extends Super {  // 자손(서브) 클래스

     }

다형성 : overload method, abstract class , construcotr

14. interface

  • 클래스 아님. (객체 생성 안됨)

  • implements

  • 추상메소드, 상수만 가질 수 있다.( abstract, final 생략 가능 )

  • 다중 구현

  • 자바는 단일 상속만 지원함.
    다중 상속은 interface를 가지고 implements(구현) 한다.

  • final
    class ---> 상속금지
    method --> override 금지
    field ---> 값 변경 금지(상수)

  • static member <--- 공유
    호출 방법 >
    객체명.스태틱멤버 또는 스태틱멤버함수()
    클래스명.스태틱멤버 또는 스태틱멤버함수()

  • 사용자 예외 만들기

  • enum 열거형 - 새로운 클래스 타입을 정의하는것
    - 특정한 값만을 가질 수 있는 데이터 타입을 정의 할때 필요하다.
    형식>
    [접근지정자] enum 열거형이름 { 필요한 상수들 나열,..... }

15. API


  java.lang package

   Object
   String
   StringBuffer
   StringBuilder
   ....

0개의 댓글