jdk 설치 brew 패키지가 설치 가 되있는 가정으로 진행한다.다음 명령어를 입력해 brew 패키지를 업데이트한다.Adoptopenjdk/openjdk 추가 대부분 게시글에서 brew cask.. 명령어를 사용하였는데 --cask 옵션으로 변경되었다.2-1 설치 가능
\- 1995년 썬마이크로시스템즈(Sun Microsystems)에서 최초 발표한 언어\- 1991년 가전 제품에서 사용할 목적인 오크(Oak) 언어에서부터 시작\- 인터넷 프로그래밍 언어로 발전하면서 자바라는 이름으로 변경\- 2010년 오라클에서 썬
\- 프로그램 실행 중에 1개의 값을 저장하기 위한 \- 메모리 내의 임시 기억장소 (메모리 공간)clip_image012\- 이름이 있다 - 변수명 (메모리 주소에 붙여진 이름)\- 기억장소 내에서의 주소가 있다\- 변수에 저장되는 값이 있다\-
연산이란? 데이터를 처리하여 결과를 산출하는 것연산자 (Operators)연산에 사용되는 표시나 기호 (+, -, \*, /, %, =, ….)피연산자 (Operand)연산 대상이 되는 데이터 (리터럴, 변수) : a + 10연산식 (Expressions)연산자와 피연
일반적인 코드 실행 흐름main() 메소드의 시작인 중괄호 { 에서 끝 중괄호 } 까지 위 -> 아래 방향으로 실행제어문프로그램의 흐름을 제어코드 실행 흐름을 개발자가 원하는 방향으로 변경할 수 있도록 도와줌if문 블록 내에 또다른 if문 포함주의!else if 문 보
같은 타입의 데이터를 연속된 공간에 저장하는 자료구조크기와 데이터 타입이 같으며 동일한 이름을 갖는 원소들의 연속적 저장 영역배열의 원소는 메모리 내에서 순서대로 저장각 배열의 원소는 인덱스(0부터 시작)로 구별배열의 저장 위치를 가리키는 참조(레퍼런스) 변수즉, 배열
같은 타입이지만 실행 결과가 다양한 객체를 이용(대입)할 수 있는 성질하나의 타입에 여러 개의 객체를 대입하여 다양한 기능 이용 가능부모 타입에는 모든 자식 객체가 대입 가능자식 타입은 부모 타입으로 자동 타입 변환됨프로그램 실행 중에 자동 타입 변환이 일어나는 것비록
소스 파일 생성 : 클래스 이름.java객체를 생성하기 전에 객체를 가리킬 참조 변수 필요참조 변수 : 객체를 참조하는(가리키는) 변수생성된 객체에 접근하여 사용형식 참조변수(객체).멤버객체의 동작(기능, 업무처리)클래스 내에서 작업을 처리하는 단위독립적인 모듈 : {
클래스를 기능별로 묶어서 그룹 이름을 붙여 놓은 것JDK 설치 시 미리 만들어진 많은 클래스들이 패키지로 묶여서 제공 (jar 파일로 압축되어 있음)클래스 작성 시 패키지 선언을 사용하지 않으면 default package에 속하게 됨클래스를 컴파일 하는 과정에서 자동
객체가 생성되는 순간에 자동으로 호출되는 메소드객체가 생성될 때 초기화를 위해 사용생성자가 없다면객체를 초기화는 메소드를 만들고초기화를 위해 이 메소드를 반드시 호출해줘야 함클래스 이름과 동일반환값 / 반환형 없음new 연산자를 통해 객체를 생성할 때만 단 한 번 자동
non-static 멤버객체를 통해서 접근지금까지 우리가 만들었던 객체(인스턴스) 멤버객체가 생성될 때 각 객체 내부에 하나씩 생성객체마다 자신의 고유 멤버 공간을 가짐다른 객체들과 공유하지 않음객체가 사라지면 함께 사라짐클래스에 고정된 필드와 메소드클래스에 소속된 멤
객체 지향 프로그램한 클래스에서 정의된 멤버 필드와 메소드를 다른 클래스가 물려 받는 것자식이 부모를 선택해서 물려받음상속 대상 : 부모 클래스의 필드와 메소드상속의 효과부모 클래스를 재사용해서 자식 클래스를 빨리 개발 개방클래스 사이의 멤버 중복 선언 불필요클래스 간
클래스, 멤버 필드, 메소드의 접근을 제어하기 위해 사용클래스 내부의 정보 은폐 (정보 은닉 가능)접근 제한 대상에 따라클래스 접근 제한클래스 멤버 접근 제한 : 필드, 메소드공용 멤버임을 표시하는 키워드 (완전 공개)패키지 상관없이 모든 클래스 외부에서 이 클래스의
구체적으로 완성되지 않았다는 의미 (미완성)body가 구현되지 않은 미완성 메소드를 포함하고 있다는 의미구체적인 내용은 구현하지 않고 전체적인 틀만 갖춘 상황상속 받는 클래스에서 용도에 맞게 구체적으로 구현해서 완성추상 메소드를 포함하고 있다는 것을 제외하고는일반 클래
객체의 사용 방법을 정의한 타입클래스들이 구현해야 하는 동작을 지정하는데 사용되는 추상형미리 정해진 규칙에 맞게 구현하도록 표준을 제시하기 위해 사용추상 클래스와 유사기본 설계도의 의미 (규격/표준을 정함)개발 코드와 객체가 서로 통신하는 접점 역할개발 코드가 인터페이
클래스 내부에 선언한 클래스클래스가 여러 클래스와 관계를 맺는 경우에는 독립적으로 선언하는 것이 좋으나특정 클래스와 관계를 맺을 경우에는 관계 클래스를 해당 클래스 내부에 선언하는 것이 좋음두 클래스 멤버들을 서로 쉽게 접근 가능코드의 복잡성 줄일 수 있음관계 클래스는
사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인한 오류예외가 발생되면 프로그램 종류예외 처리(Exception Handling)를 통해 정상 실행 상태로 돌아갈 수 있음오류 중에서 대처가능한 오류일반 예외 (Exception)컴파일 체크예외 처리 코드가 없으면
자바의 최상위 부모 클래스다른 클래스를 상속하지 않으면 java.lang.Object 클래스 상속 암시Object의 메소드는 모든 클래스에서 사용 가능Object 클래스는 필드는 없고 메소드로들로 구성모든 클래스가 Object 클래스를 상속하기 때문에 Object 클래
운영체제의 기능 일부 이용 가능프로그램 종료, 키보드로부터 입력, 모니터 출력, 메모리 정리, 현재 시간 읽기 등시스템 프로퍼티 읽기, 환경 변수 읽기 등프로그램 종료강제적으로 JVM 종료int 매개값 지정 - 종료 상태 값 exit(0) / exit(1)정상 종료 :
문자열을 저장하고 관리하는 클래스String, StringBuffer, StringBuilderString은 불변의 속성을 가짐사용 예제 위의 예제에서 "hello" 값을 가지고 있던 String 클래스의 참조변수 str이 가리키는 곳에 저장된 "hello"에 "wor
10진수 integer의 형식을 설정할 때 이용합니다.%5d 와 같이 %와 d 사이에 정수를 설정하면, 글자 길이를 설정할 수 있습니다.기본적으로 오른쪽 정렬이고, -를 붙일 경우 왼쪽정렬입니다.(ln 4~5)표현할 숫자인 i의 길이가 5보다 작을 경우 0을 붙입니다.
버퍼를 이용해서 읽고 쓰는 함수입출력의 속도가 Scanner보다 빨라서 효율적스크린샷 2022-10-12 오후 2 43 23버퍼를 한 번 거쳐가는데 빠른 이유는 하드뿐만 아니라 키보드, 모니터 등 외부장치의 데이터 입출력은 시간이 걸리는 작업이다.버퍼링없이 키보드가 눌
기본 타입에 대응되는 클래스기본타입(byte, char, short, int, long, float, double, boolean) 값을 내부에 두고 포장하는 객체기본 타입의 값은 외부에서 변경기본 타입의 값을 Wrapper 객체(포장 객체)로 만드는 과정기본 타입 (
클래스(인터페이스)나 메소드를 타입 파라미터를 이용하는 기법클래스 설계 시에 타입 <T>이 아직 결정 되지 않음총칭해서 제네릭 타입public class 클래명<T> { …. }public interface 인터페이스명<T> { }<> : 기본
컬렉션(다수의 객체)을 다루기 위한 표준화된 프로그래밍 방식많은 양의 데이터를 저장, 삭제, 검색, 비교, 정렬 등의 작업을 편리하고 쉽게 수행객체들을 효율적으로 추가, 삭제, 검색 등을 할 수 있도록 제공되는 컬렉션 라이브러리인터페이스를 통해서 정형화된 방법으로 다양
멀티 프로세스독립적으로 프로그램들을 실행하고 여러 가지 작업 처리멀티 스레드한 개의 프로그램을 실행하고 내부적으로 여러 가지 작업 처리모든 자바 프로그램은 메인 스레드가 main() 메소드 실행하며 시작main() 메소드의 첫 코드부터 아래로 순차적으로 실행실행 조건마
익명 함수를 생성하기 위한 식객체 지향 언어보다 함수 지향 언어객체 지향 프로그래밍과 함수적 프로그램 혼합함으로써 더욱 효율적인 프로그래밍 가능코드 간결필터링 또는 매핑을 통해 대용량 데이터를 쉽게 집계 (반복문에서 실행 속도 느리다는 단점)매개변수를 가진 코드 블록인
자바의 기본적인 데이터 입출력(IO: Input/Output) API 제공입출력 장치와 자바 응용 프로그램 연결 통로입력 스트림입력 장치로부터 자바 프로그램으로 데이터 전달하는 소프트웨어 모듈출력 스트림자바 프로그램에서 출력 장치로 데이터를 보내는 소프트웨어 모듈입출력