3/9 <2. 자바 기본 프로그래밍> p.39-
public class Hello {
public static void main(String[] args) {
int i = 10;
return 0;
System.out.println(i); // println은 \n과 같다.
}
}
sysout + ctrl+space = 기본 전처리 단축키 설정
ctrl+i = 블록 들여쓰기 단축키
dir : 모든 directory(=ls)
cd : change directory
3/14 p.식별자
특수문자 사용불가 (예외: ' _ ' , ' $ ')
키워드 사용불가
공백 사용불가
숫자로 시작불가
유니코드문자 사용가능(한글(UTF-8)사용가능)
대소문자 구별
길이 무제한
목적에 맞는 이름
충분히 긴 이름
ex.
class AutoVendingMachine {} //자동으로 값을 반환해주는 클래스
클래스 : 첫문자는 대문자, 각단어의 첫문자만 대문자
메소드 : 첫단어는 소문자, 각단어의 첫문자만 대문자
변수 : 첫단어는 소문자, 각단어의 첫문자만 대문자
상수 : 전체 대문자 ex.
final double PI = 3.14; //객체 변수에 final 선언하면 그 변수에 다른 참조 값을 지정할 수 없음. 즉 PI의 리터럴 값은 절대적.
주석참고 자바에서 final에 대한 이해
: 값을 임시저장하기 위한 공간 (메모리)
int i;
int i = 10; //변수 중복 선언 -> 오류
int i;
i = 10; //이렇게 변수는 한번만 선언해주고 사용하면 된다.
bit : BInary digiT. 대충 이진수의 하나의 자릿수를 뜻한다.
byte : 비트 8개의 단위. 즉 1byte = 8bit.
3/9 p.39-
기본 - int 타입
-long 타입
ex.
int x = 24; //long타입으로 선언도 가능
long y = 5000000000L;
여기서 알 수 있는 점
큰 타입은 작은 타입에게 먹힌다!
바로가기 [타입변환](#### 1. 자동 타입 변환)
유형
10진수 : 0으로 시작하지 않음 (15)
8진수 : 0으로 시작 (015)
16진수 : 0x로 시작 (0x15)
2진수 : 0b로 시작 (0b1010)
: 소수점이 없으면 에러가 난다
기본 - double 타입
-float 타입
ex.
double w = 0.1234d;
float f = 0.1234f;
double d = 0.1234;
double e = 1234E-4;
\u 로 유니코드 직접선언
문자형은 char 2byte
true/false
(주의. c와 달리 0 1로 논리 구분할 수 없다. 그러면 오류난다.)
ex.
boolean a = true;
boolean b = 10 > 0;
boolean c = 1; // 컴파일 오류
while(true) { }
작은 타입을 큰 타입으로 자동 변환
ex.
long m = 25; // 리터럴 25는 int 타입. 25가 long 타입으로 자동 변환
double d = 3.14 * 10; // 실수 연산을 하기 위해 10이 10.0으로 자동 변환
개발자가 강제로 타입 변환
ex.
int n = 300;
byte b = n; // 컴파일 오류. int 타입은 byte 타입으로 자동 변환 불가
byte b = (byte)n; // n을 byte 타입으로 강제 변환. b = 44
double d = 1.9;
int n = (int)d; // n은 1로 강제 타입 변환
: 키보드로부터 직접 읽는 자바의 표준 입력 스트림
: byte 값으로 리턴
Scanner 클래스 -> Scanner 객체 생성
-System.in 객체로 키값을 입력받아 원하는 타입으로 변환
-import 문으로 java.util 패키지의 Scanner 클래스 사용
import java.util.Scanner; // 패키지 불러오기
Scanner scanner = new Scanner(System.in); //byte타입 받아오는 객체 생성
Scanner 객체가 종료되면 System.in도 함께 종료
scanner.close();
키는 토큰 단위로 읽는다.
어쩌고next()로 작성
class 는 무조건 package 안에 들어와 있어야 한다.