본문 바로가기

Language/Java53

[자바 기본 개념] 패키지 7. 패키지7.1 자바의 패키지-패키지란? 서로 관련된 클래스와 인터페이스의 컴파일 된 클래스 파일들을 하나의 디렉터리에 묶어 놓은 것, 패키지는 jar 파일로 압축할 수 있음-import를 이용하지 않는 경우 à 소스 내에서 매번 전체 패키지 이름과 클래스 이름을 써주어야 함-import 키워드 이용하는 경우 à 소스의 시작 부분에 사용하려는 패키지 명시 7.2 패키지의 특징-관련된 클래스 파일을 하나의 패키지로 계층화하여 관리 용이-default로 선언된 클래스나 멤버는 동일 패키지 내의 클래스들이 자유롭게 접근하도록 허용-높은 소프트웨어 재사용성 -java.lang, java.io 등의 패키지들 덕분에 일일이 코딩하지 않고 입출력 프로그램을 간단히 작성할 수 있음-자바에서는 관련된 클래스들을 표준 .. 2016. 6. 22.
[자바 기본 개념] 추상메소드 / 인터페이스 4. 추상 메소드와 추상 클래스 4.1 추상메소드- 선언되어 있으나 구현되어 있지 않은 메소드 - abstract 키워드로 선언 -추상 메소드는 서브 클래스에서 오버라이딩하여 구현4.2 추상 클래스- 추상 메소드를 하나라도 가진 클래스 - 클래스 앞에 반드시 abstract라고 선언해야 함 - 추상 클래스의 객체는 생성할 수 없다. 5. 인터페이스-모든 메소드가 추상 메소드인 클래스 - 인터페이스는 상수와 메소드만 갖는다. 필드는 없음 - interface 키워드로 선언된 클래스 - 객체 생성 불가 - 인터페이스를 이용하여 다중 상속 구현 à 클래스는 다중 상속 불가 - 인터페이스는 명세서와 같음 à사용자는 구현에 대해 알 필요가 없음 - 인터페이스만 정의하고 구현을 분리하여, 작업자가 다양한 구현을 할.. 2016. 6. 22.
[자바 기본 개념] 오버라이딩/오버로딩 2. 메소드 오버라이딩2.1메소드 오버라이딩- 슈퍼 클래스의 메소드를 서브 클래스에서 재정의하는 것 - 동적 바인딩 발생 2.2 메소드 오버라이딩의 조건1. 반드시 슈퍼 클래스 메소드와 동일한 이름, 동일한 호출 인자, 반환 타입을 가져야 한다.2. 오버라이딩된 메소드의 접근 지정자는 슈퍼 클래스의 메소드의 접근 지정자 보다 좁아질 수 없다. public > protected > private 순으로 지정 범위가 좁아진다.3. 반환 타입만 다르면 오류 4. static, private, 또는 final 메소드는 오버라이딩 될 수 없다 3. 메소드 오버로딩3.1 메소드 오버로딩- 같은 클래스나 상속 관계에서 동일한 이름의 메소드 중복 작성 - 이름이 같은 여러 개의 메소드를 중복 정의하여 사용의 편리성을 .. 2016. 6. 22.
[자바 기본 개념] 상속 / 상속특징/ 타입변환 1. 상속1.1 상속이란?-상위 클래스의 특성 (필드, 메소드)을 하위 클래스에 물려주는 것 -슈퍼 클래스에서 하위 클래스로 갈수록 구체적 1.2 슈퍼 클래스 -서브 클래스의 특성을 물려 받는 하위 클래스,슈퍼 클래스에 자신만의 필드 및 메소드를 추가 à 오버라이딩 1.3 자바 상속의 특징 -다중 상속 지원 안함 -상속의 횟수에 제한 없음 -최상위 조상 클래스는 Object 클래스 (모든 클래스 자동 Object 클래스 상속) 1.4 서브 클래스의 객체와 멤버 접근 -서브 클래스의 객체에는 슈퍼 클래스의 멤버가 포함된다. -하지만 슈퍼클래스의 private 멤버는 상속되지 않기 때문에 서브클래스에서 직접 접근이 불가하다. -슈퍼 클래스의 private 멤버는 슈퍼 클래스의 메소드를 통해 접근한다. 1.5.. 2016. 6. 22.
[자바 기본 개념] 절차지향 vs 객체지향 4. 절차 지향 프로그래밍과 객체 지향 프로그래밍4.1 절차 지향 프로그래밍과 객체 지향 프로그래밍 1. 절차 지향 프로그래밍 -작업 순서를 표현하는 컴퓨터 명령 집합 -함수들의 집합으로 프로그램 작성 2. 객체 지향 프로그래밍 -프로그램을 실제 세상에 가깝게 모델링 -컴퓨터가 수행하는 작업을 객체들간의 상호 작용으로 표현 -클래스 혹은 객체들의 집합으로 프로그램 작성 5.객체 지향 언어의 특징5.1 캡슐화- 외부에서는 공개된 메소드의 인터페이스만 접근 가능- 객체 내 데이터에 대한 보안, 보호, 외부 접근 제한 하는 것.5.2 상속- 상위 클래스의 특성을 하위 클래스가 물려받는 것- 자바에는 다중 상속이 없음 - 따라서 인터페이스를 통해 다중 상속과 같은 효과 얻음 5.3 다형성- 객체에 따른 다른 동.. 2016. 6. 22.
[자바 기본 개념] 예외 처리/ 예외처리 종류 3. 자바의 예외 처리3.1 예외-실행 중 발생하는 에러는 컴파일러가 알 수 없음 -자바에서는 실행 중 발생하는 에러를 예외로 처리 -응용프로그램에서 예외를 처리하지 않으면, 예외가 발생한 프로그램은 강제 종료-try-catch-finally문 사용 / finally는 생략 가능 try { 예외가 발생할 가능성이 있는 실행문 입력 } catch (처리할 예외 타입 선언) { 예외 처리문(catch 블록) } finally { // finally는 생략 가능 예외 발생 여부와 상관없이 무조건 실행되는 문장(finally 블록) } *** catch문을 여러 개 사용하여 예외 발생의 타입에 따라 다르게 처리가 가능*** 하지만 이때 최상위 Exception을 가장 처음 기술해야 함 3.2 예외의 종류 Nul.. 2016. 6. 22.