
제어판 -> 정보 -> 고급시스템 설정 -> 고급 -> 환경변수 -> 시스템변수 -> 편집 ->변수이름 : JAVA_HOME변수값 : C:\\Program Files\\Java\\jdk-11\-> 시스템 변수 p -> path 더블클릭 -> 새로 만들기 -> %JA


앞 첫 글자 대문자, 나머지는 소문자로 함( ) : 소괄호 => 메소드를 선언하거나 호출하는 경우 사용, 우선순위로 연산을 하는 경우 사용{ } : 중괄호 => 영역을 지정할 때 사용, 자바의 참조자료형의 값을 기술할 때 사용\[ ] : 대괄호 => 자바의 자료형의 값

상수를 main 전에 선언할 때는 미리 값을 선언(초기화) 해주어야함.변수는 그냥 선언할 수 있음.위의 코드에서 변수명을 c로 두번 선언해 주었기 때문에 오류 발생!똑같은 변수명은 선언해 줄 수 없음자료형이 달라도 안됨.

연산 : 명령문을 실행해서 대상에 대한 처리를 하는 것을 연산이라고 함.연산자(오퍼레이터 = Operator) : 피연산자를 연산처리하기 위한 기호피연산자(항 = 오퍼런드 = Operand) : 연산의 대상이 되는 것을 말함.괄호연산자 : ( ), { }, \[ ]단항

이스케이프 문자란 특수한 기능을 수행하는 문자임(문자열에서 작성해야함)소스 코드에 해당되는 문자들을 ("",'', 탭 키 등등) 코드로 인식하지 못하도록 일반 문자열처럼 처리하는 기능을 수행▲이스케이프 문자syso 쓰고 ctrl + spacebar를 누르면 System

문자들이나 기호들을 컴퓨터 프로그램들이 읽을 수 있는 코드로 변환하는 작업아스키코드 (ASCII - American Standard Code for Information Interchange) : null->0x00, A -> 65, a -> 97UTF-8 (Unive

조건문 : 어떠한 조건에 의해서 명령을 건너뜨리 수 있는 명령문반복문 : 어떠한 명령 실행을 반복적으로 실행하는 명령문: if문, if-else문, if~else if~else문, 중첩문,switch, case문if문 : if문 ( 조건문 ){ 실행문들; }if~e

제어어(break, continue)가 들어가 있는 명령문제어어가 들어가for문 앞에 이름: 으로 붙는 것은 라벨이 됨\`\`\` System.out.println("중첩 for문");

특정한 조건을 만족할 때까지 돌아야 할 때, 무한 루프문을 작성함보통 루프는 특정조건을 만족할 때 돌아가고 그 조건을 벗어나면 루프문을 벗어남

같은 자료형을 가진 여러 갱의 요소를 묶어 높은 진합체참고new 키워드1\. 데이터를 저장할 수 있는 공간 생성2\. 해당 공간에 해당 자료형(참조자료형)의 내용을 복사해서 붙여넣기해주세요.형식코드마지막 인덱스 구하기 = 길이( array이름.length) -1stri
자바의 클래스에서 기능을 처리할 수 있도록 해주는 역할main과 형식이 유사함.메소드는 반드시 클래스 안에서 선언해야 함.메소드 안에는 개발자가 실행해야 할 기능들을 선언해야 함.JDK(Java Development Kit)JVM -> 실행할 때 수행, main() 메

자바에서 데이터를 담기 위한 속성들과 어떠한 명령들을 처리학 위한 기능들의 집합자바 파일의 최소 단위속성들 = 변수, 상수, 객체기능들 = 메소드, 생성자, 초기화블럭, 1) 일반 클래스main 메소드 X클래스를 만드는 목적은 객체를 생성하기 위해서public --->

클래스명과 자바파일의 이름이 동일해야 함.일반 클래스와 메인 클래스가 섞여 있는 경우 // 클래스명의 앞의 첫글자는 무.조.건. 대문자로 시작함.1\. 반드시 여러 개의 클래스 중에서 한 개의 클래스만 public 키워드를 붙일 수 있다.2\. 메인클래스를 선언하는

\-> public > protected > default > private

this : this 키워드를 가지고 있는 인스턴스(클래스 본제본 == 객체) ---> 메소드, 생성자에서 사용가능 순서 상관 없음1\. 반드시 멤버 앞에만 붙일 수가 있다.2\. this를 감싸고 있는 클래스 복제본 자신의 객체 ---> 생성자,메소드 둘 다에서 사용

: 접근연산자를 사용하여 메인메소드에서 다른 클래스에 있는 멤버변수에 접근할 수 있게 한 것을 캡슐화라고 함= 보안과 관련된 업무외부에서 멤버에 직접 접근을 하지 못하도록 막는 것(숨기는 것)조건:반드시 멤버필드의 접근제어자가 private가 되어야 한다.반드시 멤버필

최종적인 final => ~ 할 수 없는, ~ 하지 못 하는static => 정적인(고정적인), 공유되는, 객체 생성없이 클래스 이름으로 접근가능한abstract => 추상적인, 몸체가 없는, 반드시 재정의 해야 하는: 정적인(고정되어), 공유가 되는, 클래스 이름으로
static : 정적인, 공유되는 클래스명 접근가능멤버 필드, 메소드, 초기화 블록 => 멤버가 아니라 멤버로 위장클래스, 생성자 붙일 수 없음static 키워드는 this라는 키워드 쓸 수 없음static void md() {this 라는 키워드 쓸 수 없음}void

: 기본 자료형을 클래스호 시켜놓는 자료형(자동 형변환 불가함): 단축형식으로 바로 생성할 수 있음. new 라는 것이 숨어 있음. 값이 바뀌면 메모리값도 바뀜숫자 ----> 문자문자 ----> 숫자\-클래스 급으로 변환시켜야 바꿀 수 있음자료형.valeOf("매개변수

\--> 메모리 낭비와 관련: 확장(extends). 실체화(실제화)(Implements, realization), 클래스급 이상(클래스, 추상클래스, 인터페이스)인 경우는 형변환은 반드시 상속관계에서만 형변환이 가능하다. 아니면 String <=> Wrapper

: 부모와 자식관계에서 동일한 이름의 메소드가 있는 경우(매개변수까지 동일한 경우) 부모메소드가 가려지고(Hiding) 자식의 메소드로 재정의되는 현상(덮어쓰기가 되는 현상)반드시 상속관계가 존재해야 한다.반드시 부모와 메소드가 동일해야한다.(매개변수까지 동일)반드시

다른 클래스에 위치하는 메소드 임포트 하는 방법.체이닝 기법으로 접근class가 default 연산자 이상으로 선언되어 있어야함.객체도 생성되어 있어야함.

class 정의시 abstract 키워드가 붙어있어야 한다.abstract 키워드가 붙어있는 클래스는 (추상클래스)반드시 abstract 메소드를 한 개 이상은 꼭 가지고 있어야 한다. abstract 메소드 반드시 상속받은 자식 클래스에서 재정의가 이루어져야 한다.
: 기존의 순수한(아무것도 첨가되지 않은) 자바 객체상속이 들어가면 가독성이 떨어질 수 밖에 없다.그래서 딱 클랫 하나만 있는게 오히려 가독성이 높다.멤버필드가 (권장이지만 반드시라고 생각하기) private 처리 되어야 한다.멤버필드의 값을 설정하거나, 얻어갈 수 있
배열! --> length 키워드 문자열 --> length 메소드Character wrapper class 임java.util.Random문자열객체명.split("구분자", 숫자값) 메소드:숫자값이 없는 경우 : nolimit = default
내가 입력한 줄이 끝났음을 명시하는 문자 : 한 칸 공백만약에 line이 숨어져 있지 않은 메소드를 이어서 쓰는 경우는 다음을 입력하기 위해서는 엔터를 쳐주어야 한다.=> 값을 입력할 때 절대 공백을 넣을 수 없다. 연결된 단어로만 가능하다.=> 값을 받아오는 공간으로
필드(=속성 =멤버 =인스턴스 = Attribute =Property =컬럼 =column)의 값을 초기화시키는 기능을 가지고 있는 블록초기화 순서:필드의 자동초기화값 -> 필드선언 시 초기값 바로 대입하는 경우( 명시적 초기화) -> 인스턴스 필드 블록 초기화값 ->
접근제어자 : public protected, default, private기타제어자 : final, static, abstract사용가능 범위 정리지역변수: 접근제어자 모두 안됨, 기타제어자는 final만 가능멤버필드: 접근제어자 모두, 기타제어자는 abstract
(=지네릭타입 =Generic Type) T => 한 개의 자료형을 변경하고자 하거나 어떤 변수를 지정할 지 잘 모르는 경우는 대개 T 변수를 쓴다. ( 자료형을 의미하는 Type의 약자에서 따온 명칭) E => 배열처럼 나열하는 목록의 자료형을 가지는 클래스의 요소
: 날짜와 관련된 클래스 중 가장 많이 사용하는 라이브러리java.text.SimpleDateFormat: 날짜를 내가 원하는 형식으로 사용할 수 있는 라이브러리: SimpleDateFormat는 반드시 객체를 생성해야 함.java.time.DayOfWeekjava.t
한꺼번에 많은 데이터들을 처리하기 위한 구조, 형식을 제공하는 것Collection 인터페이스가 조상인터페이스임List 인터페이스 -> ArrayList클래스, LinkedList, Vector, stack , Queue=> 배열객체가 보완되어 나온 자료형, 방구조를

List<자료형> 객체명 = new ArrayList<자료형> (); List<자료형> 객체명 = Arrays.asList(\[값1,값2,값3....]);ArrayList<자료형> 객체명 = new ArrayList<자료형>();add(
Inner class로, 이름이 없는 클래스를 말하다.클래스 정의와 동시에 객체를 생성할 수 있다.Interface, AbstractClass 모두 익명 클래스로 객체를 만들 수 있다.: 부모 클래스의 이름이나 구현하고자 하는 인터페이스의 이름을 사용해서 정의하기 때문
클래스 안이나 메소드 안에 선언되 또 다른 클래스를 말함.클래스 선언시 static 제어자를 사용할 수 있다.클래스를 선언 시 접근제어자를 모두 사용할 수 있다.어디서 접근제어자가 default랑 public, final과 abstract 밖에 못 받았지?종류:외부에서
이름 없는 함수함수의 구현과 호출만으로 프로그램을 만들 수 있는 방식이다.인터페이스만 이용 가능외부에 정의된 변수를 참조할 때, final, 또는 Effectively final 변수만 가능함.함수 내부에서 지역변수 선언시 static 불가, final, 일반 변수만
: 예측가능한 에러를 정상종료가 되도록 처리하는 방법Exception클래스 : 예외처리의 최고 조상 클래스(자료형)책임감이 강한 형 : try ~ catch 문(짝임, 반드시 같이 존재해야 함)try문에서 발생된 에러는 catch문에서 해결함. 내가 발생시킨 에러를 내
:입출력 라이브러리는 java.io 패키지에서 제공됨스트림: 단방향으로 흐르는 데이터의 흐름을 스트림이라고 함.바이트 스트림 : 그림, 멀티비디어, 분자 등 모든 종류의 데이터를 입축력할 때 사용문자 스트림: 문자만 입출력할 때 사용바이트 스트림의 최상위 클래스 : I
먼저 파일 위치를 만든 후 mkdirs로 파일을 생성함FileWriter로 파일에 내용을 적음
: 하나의 프로그램 당 하나의 프로세스만을 가지고 있는 것1\. 장점: 메모리를 많이 차지 하지 않음. 속도가 빠름2\. 단점: 하나의 프로세스에 문제가 발생하면 프로그램이 종료가 됨.1\. 장점: 하나의 프로세스에 문제가 발생해도 프로그램이 전체적으로 영향을 받지 않
: 지역(=국가)네트워크를 통신(신호를 주고 받는 것)으로 연결한 것네트워크란: 여러대의 컴퓨터들을 통신회선으로 연결한 것. 그물망처럼 연결된 통신망을 말함네트워크 종류:PAN(Personal Area Network) : 가장 작은 규모의 네트워크, 근거리, 예시 :