Study/Java (8) 썸네일형 리스트형 [Java] 모듈과 패키지, 자바의 기본 패키지 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 패키지(package) - 서로 관련 있는 클래스나 인터페이스의 컴파일된 클래스 파일들을 한 곳에 묶어 둔 것 - 파일의 경로명은 점(.)을 찍어 표현 import문 - 다른 패키지의 클래스를 사용할 때, 컴파일러에게 그 클래스의 경로명을 알려주는 문 import 패키지.클래스; 패키지 선언 - 패키지 명은 package 키워드를 이용하여 소스 파일의 첫 줄에 선언 - p333 참고 패키지의 특징 - 패키지를 만들어 계층화시키면 더욱 관리하기 좋음 - 패키지별 접근 권한의 범위로 이용 가능 - 동일한 이름의 클래스를 다른 패키지에 작성 가능 - S/W의 높은 재사용성 모듈(Module) - 패키지들을 담는 컨테이너 - 확장자.. [Java] 상속과 인터페이스 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 상속 - 클래스가 위 클래스를 상속받아 확장(extends)함을 의미 - 코드 중복을 제거하여 클래스를 간결하게 구현 가능 - 장점 클래스의 간결화 클래스 관리 용이 S/W의 생산성 향상 - 부모 클래스를 슈퍼 클래스(super class), 상속받는 자식 클래스를 서브 클래스(sub class)라고 부름 - 상속을 선언할 때 확장한다는 뜻을 가진 extends 키워드를 사용 - 서브 클래스 객체 생성 Point p = new Point(); ColorPoint cp = new ColorPoint(); - 자바 상속의 특징 클래스의 다중 상속을 지원하지 않는다. 상속의 횟수를 제한을 두지 않는다. 계층 구조의 최상위에 jav.. [Java] 클래스와 객체 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 객체 지향 언어의 특성 - 캡슐화(Encapsulation) : 객체를 캡슐로 싸서 내부를 보호하고 볼 수 없게 하는 것 → 외부의 접근으로부터 안전, 클래스라는 캡슐을 사용하고 필드(멤버 변수)와 매서드(멤버 함수)로 구성 - 상속(Inheritance) : 상위 객체의 속성이 하위 개체에 물려져서, 하위 개체가 상위 개체의 속성을 모두 가지는 관계, 자바에서는 자식 클래스가 부모 클래스의 속성을 물려받고 기능을 확장(extens)하는 개념 - 다형성(Polymorphism) : 같은 이름의 메소드가 클래스 혹은 객체에 따라 다르게 동작하도록 구현되는 것 - 매소드 오버라이딩(Overriding) : 슈퍼 클래스(부모 클래.. [Java] 예외처리 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 예외(Exception) - 오동작이나 결과에 악영향을 미칠 수 있는 실행 중 발생 한 오류 - 실행 중 예외가 발생하는 경우 정수를 0으로 나누는 경우 배열의 크기보다 큰 인덱스로 배열의 원소를 접근하는 경우 존재하지 않는 파일을 읽으려고 하는 경우 정수 입력을 기다리는 코드가 실행되고 있을 때, 사용자가 문자를 입력한 경우 예외 처리(try~catch~finally) - 개발자가 작성한 프로그램의 실행 중에 예"외가 발생하면 이에 대응하는 것 - try~catch~finally try { 예외가 발생할 가능성이 있는 실행문(try블록) } catch { 예외 처리문(catch 블록) } finally (생략가능) { 예외.. [Java] 배열 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 배열(array) - 인덱스와 인덱스에 대응하는 데이터들로 이루어진 자료 구조 - 같은 종류의 데이터들이 순차적으로 저장 - 배열을 사용하는 큰 이유 중 하나는 반복문의 활용 - 배열의 선언 및 생성 int a = new int[10]; // 10개의 정수 공간 배열 생성, 배열의 이름은 a int a []; = int [] a; // 배열 a 선언 - 배열 초기화 int a[] = { 1, 2, 3, 4, 5}; - 배열의 인덱스는 정수만 가능, 인덱스는 0부터 시작하며 마지막 원소의 인덱스는 (배열 크기 -1) - 배열 공유 int a[] = new int[5]; int b[] = a; //레퍼런스 치환, b는 a와 동일.. [Java] 반복문 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 for문 - 처음부터 반복 횟수를 알 수 있는 경우에 사용하는 반복문 for (초기문; 조건식; 반복 후 작업){ ... 작업문... } - 초기문 : 주로 조건식에서 사용하는 변수를 초기화 - 초기문 특징 초기문은 시작할 때 한 번만 수행 콤마(,)로 분리하여 여러 문장을 나열할 수 있음 초기문은 빈상태로 두어도 되지만 끝에 세미콜론(;)은 있어야 함 - 조건식 : 논리형 변수나 논리 연산을 사용 - 조건문 특징 조건식의 결과가 true이면 반복이 계속되고 false이면 for문을 벗어남 조건식에 true가 있거나 비어있으면 무한 반복(infinite loop)됨 - 작업문 : for문이 반복되는 동안 반복 실행, 작업문이.. [Java] 자바의 기초(2) 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 자바의 클래스 자바의 클래스는 프로그램의 작성에 있어서 가장 기본적이면서도 중요하다. 클래스 바깥쪽에는 어떤 것도 작성되면 안된다. 자바의 주석문 // 한 줄 주석 /* 여러 줄 주석 */ main() 메소드 자바는 main() 메소드에서부터 실행을 시작하는데, 반드시 public, static, void 타입으로 선언되어야 한다. 한 클래스에 2개 이상의 main()을 작성하면 안 된다. ※ 메소드(method) : 클래스의 멤버 함수를 자바에서는 메소드라고 부르며, 메소드 개수엔은 제한이 없다. 메소드 내에 선언되어 사용되는 변수를 지역변수(local variable)이라고 한다. 화면 출력 System.out.print.. [Java] 자바의 기초(1) 참고 : 명품 JAVA Programming (개정 4판) 저자 황기태, 김효수 Java의 특징 1. Java는 객체지향 언어 처음 프로그래밍 언어가 등장하였을 때에는 컴퓨터의 CPU가 2진수밖에 인식하지 못하였기 때문에, 2진수로 되어 있는 명령어(기계어) 들을 이용하여 프로그램을 작성하였지만 사람이 기계어를 작성하는 건 매우 힘들었다. 이것을 기계어의 명령들을 표현하기 쉬운 니모닉 기호(mnemonic symbol)로 일대일 대응시킨 어셈블리어(assembly language)가 만들어졌다. 이것 또한 이해하기 힘들어 지금 현재에 있는 고급언어가 생겨났다. 고급언어는 절차 지향 언어의 형태에서 지금의 객체지향 언어로 진화했다. 대표적인 객체지향 언어로는 C++, Java, C# 등이 있다. 프로그래밍.. 이전 1 다음