자바는 웹 프로그램을 개발하는데 특화된 컴파일 언어이자 벡엔드 개발 전문 언어임. 플랫폼에 독립적이라서 어떤 운영체제(OS)에서도 실행이 가능하며 가상머신을 통해 실행됨
intellij
java
자바는 객체 지향 언어임, 그래서 객체가 컴퓨터 어디에 저장되고 실행되는가 중요함
- byte, short, char, int, long, float, double, boolean 타입
- 스택방에 값이 저장됨
- 기본 타입을 제외한 자료형(타입) 배열, 열거형, 객체
- 스택방에 힙방번호(주소)가 저장됨 -> 힙방에 값이 저장됨
- 메소드방 : 정적변수/상수, 함수, 생성자, 클래스코드
- 스택방 : 지역변수/매개변수
- 힙방 : 객체, 배열
기본타입에서 사용되면 값 비교, 참조타입에서 사용되면 방번호(주소) 비교
초기화 시 null로 초기화하는 것은 자바에서 피하는 것이 좋음 ( null 포인트 예외 발생 가능서 높음 : 강제 프로그램 중단, 다른 서비스까지 중단 시킴 )
객체에 null을 넣어놓고, 객체의 함수 및 변수를 호출할 경우 대부분 발생.
변수는 1개의 데이터만 저장되므로, 저장되어야 할 데어터 많아지면 불편함. 배열은 많은 양의 데이터를 적은 코드로 손쉽게 처리할 수 있음
1) 자료형[] 변수 = {값1, ... 값n}; // 이때는 선언과 생성을 항상 1라인으로 작성해야함 (분리하면 컴파일 에러 발생)
2) 자료형[] 변수 = new 자료형[길이];
3) 자료형[] 변수 = new 자료형[길이] {값1, ...., 값n};
- 이때는 선언과 생성을 분리 작성해도 가능함(2라인으로 작성 가능)
사용법)
자료형[][] 변수 = new 자료형[행크기][열크기]
// 바깥 {} : 행(바깥 for문), 안쪽 {} : 열(안쪽 for문),
자료형[][] 변수 = { {열1, ... 열n}, {열1,... 열n} }
for(자료형 변수 : 배열) {
반복문
}
- 반복 실행 위해 증감식 사용하지 않음(배열의 끝까지 자동 증가되면서 실행됨)
- 반복할 때마다 변수에는 배열에서 가져온 값이 하나씩 저장됨
몇가지로 한정된 데이터일(상수) 경우 열거 자료형을 고려함( 요일, 계절 등 )
사용법 : 열거형이름.상수명
ex) Week.MONDAY
열거 타입 변수 : 열거 자료형으로 선언된 변수.
ex) Week today = Week.FRIDAY; // today 가 열거 자료형 변수임