
[JAVA] JAVA 프로그래밍 기초 교육 : 클래스 라이브러리(java.lang)
2022. 5. 27. 17:06
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 18. 클래스 라이브러리 + 자바의 정석[기초편] 클래스 라이브러리 JAVA 표준 클래스 라이브러리에 있는 다양한 클래스들 활용해보기! 클래스 사용 프로그램 순서 ① 클래스 코드 작성 → 클래스 파일 생성 ② 클래스를 이용한 코드 작성 → 클래스를 인스턴스화 하고 클래스의 멤버(변수&메소드)를 사용 클래스 라이브러리를 이용하면 ②번부터 코드 기술 가능 지금까지 사용해본 클래스 라이브러리 package chap18; import java.util.Scanner; public class Sample { public static void main(String[] args) { try { // Scanner클래스 인스턴스화 Scanner sin = new Scanner(Sy..

[JAVA] JAVA 프로그래밍 기초 교육 : 예외 처리
2022. 5. 26. 20:08
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 17. 예외 처리 + 자바의 정석[기초편] # 프로그램 오류 [오류의 종류] · 컴파일 에러 : 컴파일 시 발생하는 에러 · 런타임 에러 : 실행 시 발생하는 에러 · 논리적 에러 : 실행은 되지만 의도와 다르게 동작하는 것 # 런타임 에러 자바에서는 실행 시 발생할 수 있는 오류 (error와 exception)를 클래스로 정의함. · 에러(error) 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 (예 : 하드웨어 고장, 메모리 부족 등) · 예외(exceptiom) 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 정수를 0으로 나눔 배열의 요소 수보다 큰 요소 수를 지정해 액세스 실시 사용자의 입력 실수 (수치 입력 요구중인데 문자 입력 등) 존재..

[JAVA] JAVA 프로그래밍 기초 교육 : 패키지 & 임포트
2022. 5. 26. 17:33
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 16. 패키지 및 임포트 + 자바의 정석[기초편] # 패키지 패키지란? 클래스의 묶음. 서로 관련된 클래스들끼리 그룹 단위로 묶어 놓음으로써 클래스를 효율적으로 관리 가능. [패키지 선언] package 패키지명; public class 클래스명 { ... } 패키지 선언은 반드시 소스파일에서 주석과 공백을 제외한 첫 번째 문장 이어야 한다. [서브 패키지] 패키지도 하위 패키지(서브 패키지)를 만들어 사용할 수 있다. (계층화)패키지명 다음으로 점 '.'을 찍어 기술한다. package 패키지명.서브패키지명; public class 클래스명 { ... } [패키지 특성] 1. 하나의 소스파일에 단 한 번만 선언 가능. 2. 모든 클래스는 반드시 하나의 패키지에 포함..

[JAVA] JAVA 프로그래밍 기초 교육 : 클래스 멤버 & 인스턴스 멤버
2022. 5. 26. 16:47
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 15. 클래스멤버와 인스턴스멤버 + 자바의 정석[기초편] # 클래스 멤버 클래스 멤버란? 클래스 메소드 & 클래스 변수 (static이 붙은 메소드나 변수) - 클래스와 관련된 멤버 - static 수식자가 붙은 클래스 멤버는 객체를 생성하지 않고 멤버에 액세스가 가능하다. - 각 객체들의 공통의 멤버가 되기 때문에 클래스 전체로 취급해야 하는 데이터나 조작 등을 클래스 멤버로 둔다. - 클래스 멤버는 정적 멤버라고도 부른다. - 클래스 변수에는 this 키워드는 사용할 수 없다. (인스턴스 변수만 가능) - 클래스 메소드 내에서 인스턴스 멤버는 액세스가 불가능하다. · 클래스 변수 : 모든 인스턴스가 하나의 저장공간을 공유하므로, 항상 공통된 값을 갖는다. (공통 ..

[JAVA] JAVA 프로그래밍 기초 교육 : 생성자 & 오버로드
2022. 5. 25. 20:09
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 13. 생성자 / 14. 오버로드 + 자바의 정석[기초편] # 생성자(constructor) 생성자란? 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메소드' [생성자 특징] 생성자의 이름은 클래스의 이름과 같아야 한다. 생성자는 리턴 값이 없다. (모든 생성자가 리턴 값이 없으므로 void를 생략할 수 있게 하였다.) 인스턴스 변수(필드변수)들의 초기화에 사용되는 특별한 메소드이다. 모든 클래스에 존재하여 오브젝트 작성 시에 반드시 사용된다. 생성자 앞에 private 한정자를 걸고 다른 클래스에서 호출 시 외부 엑세스가 불가능하여 컴파일 오류가 난다. [생성자 정의] 클래스이름(타입 변수명, 타입 변수명, …) { // 인스턴스 생성 시 수행될 코드, // 주로..

[JAVA] JAVA 프로그래밍 기초 교육 : 엑세스 한정자 & 캡슐화
2022. 5. 25. 17:17
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 12. 엑세스 한정자와 캡슐화 + 자바의 정석 [기초편] # 한정자(접근 제어자 = 엑세스 수식자) 멤버 또는 클래스에 사용. 해당하는 멤버/클래스를 외부에서 접근하지 못하도록 제한함 [접근 제어자를 사용하는 이유] - 외부로부터 데이터를 보호하기 위해 - 외부에는 불필요한, 내부적으로만 사용되는 부분을 감추기 위해 (데이터 감추기(data hiding)) ▷ 캡슐화 접근 제어자가 사용될 수 있는 곳 : 클래스, 멤버변수, 메소드, 생성자 접근 제어자(한정자) 접근 가능 범위 private 같은 클래스 내 기본 값(default) - 한정자 없음 같은 클래스 내 protected 같은 패키지 내, 그리고 다른 패키지의 자손 클래스에서 접근 가능 public 접근 제한..

[JAVA] JAVA 프로그래밍 기초 교육 : 객체 지향 & 클래스
2022. 5. 24. 21:52
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 10. 객체지향 +자바의 정석 [기초편] # 객체 지향 프로그램 객체 지향 프로그램이란? 어떤 대상(객체)를 가지고 프로그래밍 하는 것. 객체 지향 프로그래밍을 할 때는 객체를 먼저 정의하고, 각 객체가 어떤 기능을 제공하고 객체 간 협력을 어떻게 구현할 것인지를 고민해야한다. [객체지향 언어의 주요 특징] 코드의 재사용성이 높다. 코드의 관리가 용이하다. 신뢰성이 높은 프로그래밍을 가능하게 한다. 클래스란? 객체의 속성과 기능을 코드로 구현한 것 (=객체를 정의함). 객체를 생성하는데 사용한다. JAVA 프로그램에는 클래스가 최소 1개 이상 있어야 한다. 객체란? 객체지향 이론에서는 사물과 같은 유형적인것과 개념,논리와 같은 무형적인 것들도 객체로 간주한다. [클래..

[JAVA] JAVA 프로그래밍 기초 교육 : 메소드(Method)
2022. 5. 23. 19:56
Backend/JAVA
교재 : JAVA 프로그래밍 기초 - 09. 메소드 # 메소드 메소드란? 함수의 한 종류로, 프로그램에 실시하게 하는 동작(처리)의 집합을 기술한 것. 또는, 그 동작의 집합을 호출하는 기술 자바 기존 메소드는 JAVA API라 불리는 문서에 정리되어있음. Java API(Application Program Interface) 외에는 직접 함수를 정의하고 호출할 수 있다. · 메소드 정의 메소드를 정의하는 위치는 main메소드 전 후 어디든 상관없이 선언이 가능하다. 단, 클래스 내에 있어야하며 중첩되면 안된다. static 수식자 리턴형 메소드명(인수) { 처리내용; return 문; } 선언된 메소드 호출시 : 메소드명(인수); ① static 변수 위에서는 static 수식자(예약어)로 사용되었다...