본문 바로가기

중첩 클래스 중첩(Nested) 클래스 중첩(Nested=Inner) 클래스의 특징 - 클래스 내부에 또 다른 클래스를 가짐으로 클래스 관리의 효율을 높인 것. - 내부 클래스는 외부 클래스의 모든 멤버들을 마치 자신의 멤버처럼 사용할 수 있다. - 서로 관련 있는 클래스를 논리적으로 묶어서 표현함으로써, 코드의 캡슐화를 증가시킨다. - static 내부 클래스를 제외하고는 다른 내부 클래스는 항상 외부 클래스를 통해야 생성할 수 있다. 중첩(Nested=Inner) 클래스의 종류 Member는 인스턴스 클래스. Anonymous를 가장 많이 사용하며 로컬의 변형된 메소드. 중첩(Nested) 클래스  중첩(Nested=Inner) 클래스의 종류 인스턴스 멤버 클래스 - 인스턴스 멤버 클래스는 static 키워드 ..
컬렉션 프레임워크(사용빈도 최상) 목차 자료구조 자료구조 클래스들 컬렉션 프레임워크 Collection과 Map 자료구조 자료구조 - 데이터를 효율적으로 사용할 수 있도록 만들어진 구조. - 데이터 추가, 삭제, 검색의 효율성을 제공 자료구조 종류 - 리스트(List) : 데이터를 1차원으로 늘어놓은 형태의 자료구조. - 배열리스트 : 데이터가 연속적으로 저장되므 검색에 용이하지만 삭제/삽입에는 용이하지 못하다. - 연결리스트 : 데이터가 연속적이진 않지만 서로간에 연결되어있어 삭제/삽입에 용이하나 검색에는 용이하지 못하다. - 스택(Stack) : 마지막에 넣은 데이터부터 순서대로 꺼낼 수 있는 자료구조.(LastInput/FirstOut:LIFO)(설거지때 쌓는 그릇과 쌓여진 최상단의 그릇먼저 사용되는 예.) - 큐(Queue) : ..
기본 API 목차  자바 API 도큐먼트  java.lang 패키지  Object 클래스  System 클래스  Class 클래스  String, StringBuffer, StringTokenizer 클래스  Wrapper 클래스  java.util 패키지  Date, Calendar 클래스  Format 클래스 자바 API 도큐먼트 - 자바 API (Application Programming Interface) - API는 라이브러리(library) 라고 부르며, 프로그램 개발에 자주 사용되는 클래스 및 인터페이스의 모음을 말한다. - ${JAVA_HOME}\jre\lib\rt.jar 라는 압축 파일(jar은 자바 아카이브의 준말. 즉, 압축파일) - java.lang 패키지는 자바 프로그램의 기..
예외 처리 자바의 에러  컴파일 타임 에러(Compile-Time Error) - 자바의 문법적 오류로 컴파일이 되지 않는 구문상의 오류. 예 : int a;  실행 타임 에러(Run-Time Error) - 컴파일은 되지만 실행이 되지 않는 로직(Logic) 상의 오류. - Error 와 Exception으로 구분  예외(exception)란? - 예외(exception)란 컴퓨터 시스템이 동작하는 도중에 예상하지 못한 오류가 발생하는 것을 의미합니다. - 이렇게 발생한 예외 상황은 실행되고 있던 프로그램을 비정상적으로 종료시킵니다. - 따라서 예외 처리(exception handling)를 통해 이러한 예외 상황을 처리할 수 있도록 코드의 흐름을 바꾸는 행위가 필요합니다. - 자바는 언어 차원에서 예외 처..
패키지와 접근제어 패키지  package 정의 - 서로 연관된 클래스나 인터페이스를 한 데 묶어서 관리하는 단위(폴더와 유사) - package 사용시 클래스 이름 중복, 충돌을 피할수있음.  package 선언 - 파일의 최고 상위에 위치 - 예) package library; 또는 package kr.or.nextit.common;  package 컴파일(-d 옵션) - javac –d 저장경로 파일명.java - Javac –d ../bin Hello.java  타 패키지의 클래스 사용법 : import 및 절대경로명 - import java.io.*; or java.io.InputStream; ex: 세종시.종촌동.김지현 처럼 패키지 명이 진짜 이름임. 접근제어  접근 제어 수식어(access contro..
상속  상속이란?  이미 존재하는 클래스를 확장해서 새로운 클래스를 만드는 기술  기존 클래스가 가지고 있는 데이터 구조(필드)와 기능(메소드)을 그대로 물려받아서 사용하는 기술.  기존에 작성된 클래스를 재활용할 수 있다.  클래스 간의 계층적 관계를 구성함으로써 다형성의 문법적 토대를 마련.  extends 키워드 사용  class SubClass extends(확장) SuperClass{}  상속과 생성자  생성자를 통한 슈퍼 클래스 필드 초기화 방법  생성자가 있는 슈퍼 클래스 상속하는 방법  super  현재 객체의 바로 상위인 super클래스(부모클래스)를 참조할 수 있는 미리 정의된 상위 클래스의 객체변수.  부모 클래스로부터 상속 받은 필드나 메서드를 자식 클래스에서 참조..
자바 객체와 클래스 (시험범위.)  객체 지향 프로그래밍(OOP, Object Oriented Programming) 객체 지향 프로그밍에서는 모든 데이터를 객체(Object)로 취급하며, 이러한 객체가 프로그램의 중 심이 된다.  객체(여러 고양이들, 개들, 여거라지 객체들)  객체란 어떤 대상이 상태(state)와 행위(behavior)를 갖는 것.  소프트웨어 객체는 상태를 나타내기 위해 변수(variable)를 사용하며, 행위들은 메서드(method)로 표현된다.  클래스(고양이, 개 등등 객체의 묶음)  클래스는 상태와 행위가 같은 객체들을 대표하는 것.  객체의 상태를 나타내는 필드(field)와 객체의 행위을 나타내는 메서드(method)로 구성된다.  개념적(추상적)이며 종합적이다.  객체를 정의하는 모체(..