객체지향언어 = 프로그래밍언어 + 객체지향 개념 (C++,java,파이썬,js)
자동메모리 관리 => 가비지커렉터GC
멀티 쓰레드 지원
풍부한 라이브러리로 쉽게 개발가능
운영체제에 독립적
1) 변수는 하나의 값을 저장할 수 있는 메모리 공간이다.
int age; //정수(int)타입의 변수 age를 선언방법
age = 25; //변수 age에 25를 저장한다.
( '=' 는 등호가 아니라 대입이다.)
java에서는 대입연산자라고 불린다.
변수의 초기화 - 변수에 처음으로 값을 저장하는 것
int x = 0; //변수 x를 선언 후, 0으로 초기화
int y = 5; // 변수 y를 선언 후, 5로 초기화
변수타입이 같으면 int x = 0,y=5; //위의 두 줄을 한줄로 가능하다 단 콜롬사용
1)변수의 값이 필요한 곳에 변수의 이름을 적는다.
int year =0, age = 14;
year = age + 2000;
→ year = 14 + 2000;
→ year = 2014;
year는 2014가 된다.age = age + 1; //변수의 값을 1증가시키는 방법
→ age = 14 + 1;
→ age = 15
age는 15가 된다.
System.out.println(age); // 출력하게 되면 age는 15니까 15로 출력된다.
int age = 25; //int가 정수타입이기때문에 정수를 저장할 수 있는거다
age = 3.14; // 컴파일
age는 정수타입이고 3.14는 실수형이기 때문에 일치하지 않아서 컴파일오류가 난다.
char ch = '가'; // char는 문자타입
double pi = 3.14 // double은 실수 타입
값(data) - 문자 - char
- 숫자 - 정수 (0,25…100) - byte, short, int , long
- 실수 (3.14,1.2…0.1) - float, double
- 논리 - boolean - true
- false
=> 8개 기본형
int score = 100;
score = 200; // 기존 100이였던게 사라지고 200으로 바뀐다
final int MAX = 100; // MAX는 상수 , 상수는 쓸때 변수타입 앞에 final를 꼭 써야한다.
MAX = 200; // 에러
char ch = 'A';
String str = 'abc';
접두사, 접미사 (대소문자 구별안함)
| 종류 | 리터럴 | 접미사 |
|---|---|---|
| 논리형 | false, true | 없음 |
| 정수형 | 123, 0b0101, 077, 0xFF, 100L | L |
| 실수형 | 3.14, 3.0e8, 1.4f, 0x1.0p-1 | f, d |
| 문자형 | 'A', '1', '\n' | 없음 |
| 문자열 | "ABC", "123", "A", "true" | 없음 |
0b0101 => 0b는 2진 접두사다. 0는 숫자0
123, 0b0101, 077, 0xFF => int
100L일경우 long을 씀
f,d => float, doubre
\n => 역슬래쉬 쓰며 개행문자다
"A" => A하나만 써도 쌍따옴표일때 문자열로 인식한다.
byte b = 127; // int타입
byte b = 128; // 에러
byte는 -128~127까지다. 그 이후엔 에러다
int i 100; // 10진수
int oct = 0100; // 8진수
int hex = 0x100; // 16진수
long l = 10_000_000_000L; // 20억이 넘는값은 long타입에 넣어야한다. 접미사 L을 꼭 넣어야한다.
long l = 100; // OK L생략가능
float f = 3.14f; // f는 생략불가
doubre d = 3.14d; // d는 생략가능문제) 실수형으로 해당된다.
10. -> 10.0 // doubre
.10 -> 0.10 // doubre
10f -> 10.0f // float
le3 -> 1000.0 // doubre