DAY 02
JDK 설치 및 전역패스 설정
- Java platform standara edition (java se) 8
- Java se development kit (jdk) 8
- Java se runtime enviromnet (jre) 8
- Java se = jdk + jre
- Java virtual machine (jvm)
* 전역패스 설정
1) 고급 시스템 설정 -> 고급 -> 환경변수 -> 시스템 변수 -> 새로만들기
2) JAVA_HOME = 자바가 설치된 경로
3) PATH에 %JAVA_HOME%₩bin 로 저장
4) cmd 열어서 javac -version을 입력 후 확인
jdk 1.8 구성
- bin => 실행파일
- include => os의 기본값 = 자료타입
- jre => 자바를 실행할 때 필요한 기본 라이브러리
- lib => 기본 라이브러리
- javafs-src => 확장된 자바의 GUI source code
- src => 기본 라이브러리로 만든 source code
* 필수 : bin , include, jre, lib
▶ lib
- exe 실행파일
- dll 참조파일
- .jar
- .pyc
▶ bin
- jar.exe : class들을 프로젝트로 구현되어 참조형으로 만드는 프로그램
- java.exe : class를 실행
- javac.exe : .java 파일을 컴파일한 후 class를 만들어준다.
- jps.exe : java 실행시 ID를 할당받아 프로세싱 하는 것을 확인
- jvisualvm.exe : vm의 모니터링
- native2ascii.exe : 아스키코드로 변환해주는 파일 (키보드로 입력된 값들을 코드값으로 바꾸어준다.)
▶ include
- winc : 자료형 (정수, 실수, 문자, 문자열, 불리언)
▶ jre -> lib -> ext
- 주변장치 추가 시 연결되는 드라이버 파일 (오라클드라이버 / 다른 프로그램 드라이버 파일 등등)
- CRUD : Create , Read, Update, Delete
자바의 실행 특징 및 파일 저장
1) 자바의 실행단위는 .class 이다.
2) Filename.java (class filename{}) -> javac filename.java (filename.class) -> java filename (java filename)
3) 자바의 파일 이름은 class user_name의 user_name과 같아야한다
4) 자바는 .java확장자를 가진 클래스 코드를 가진다
5) 자바는 클래스 및 메소드 모든 영역에 접근제한자를 지정할 수 있다.
Public -> Protected -> default -> Private
6) 하나의 자바 파일에 여러개의 클래스를 선언 할 수 있고, 중첩으로 선언할 수 있고, 접근제한자를 다르게 줄 수 있다
ex) outer_class$inner_class.class , outer_class.class
7) 같은 접근 제한자 일때 맨 처음 선언하는 클래스 이름으로 저장하고 접근제한자를 다르게 주고 같은 파일에 선언되는 여러개의 클래스는 접근제한자 우선순위 또는 public static void main (String[] args){}를 가진 클래스로 저장한다.
*파일 변환이 자유롭게 이루어져야 한다!!
- txt, csv(tsv),xml,json,sql
* Program files -> Common files -> Oracle -> java -> javapath
주소 연산자 확인
System.ont.println() -> .연산자 -> 주소연산자
==> Pointer 연산자 중 하나 (. -> & $)
참조
- 상대방의 주소를 알게 되면 연결고리가 되어 상대방이 가진 값을 CRUD 할 수 있는 관계
값을 저장할 때 파일로 저장할 경우의 패턴 (확장자)
- 변수 = 값
ex) int a = 100; // a라는 이름의 정수형 메모리 (4byte)에 100이라는 값을 대입
변수로 호출하면 값을 리턴한다
ex) System.out.println(a); -> 100
1) Properties (환경설정파일)
key = value
2) Xml (웹서비스)
.net (C#) -> C#으로 .net안에 프로그램을 이용해서 웹서비스 (.xml)을 구현하는 프레임워크 Element 사용
ex) <a>100<\a>
3) Json -> 실시간으로 발생되는 데이터를 저장 // 웹서비스 하는 속성 파일
{key:value}
ex){a:100}
접근제한자
- public (공개), protected (상속시공개), default(같은 패키지에서만 공개), private(비공개)
- 접근제한자 class User_name{}
ex)
public class BB{}
protected class DD{}
class AA{} // default
private class EE{}