1. Java란?
C++ 기반 객체지향 프로그래밍 언어(상속, 캡슐화, 다형성 적용). 조립식으로 유지보수에 적합.
플랫폼(운영체제)에 독립적, 호환성이 좋음. 자동 메모리 관리(garbage collector 작동)로 프로그래밍에만 집중 가능. 멀티쓰레드 지원.
실행방식
javac (compile) java(interpreter)
MainClass.java ----------> MainClass.class -----------> JVM.class -----> 운영체제 ----> 하드웨어 출력
원시 소스 <---------- 바이트 코드 Java Virtual Machine, 가상머신: OS에 종속적
javap(일부)
2. 식별자 명명규칙 및 권장사항
1)대소문자 구분, 첫자는 숫자 불가
- 클래스명 첫자: 대문자
- 변수/메소드 첫자: 소문자
- 상수: 모두 대문자
- 단어 두 개 이상일 때 뒷단어 첫자를 대문자로(파스칼 표기법, upper카멜표기법)
ex) File+Name ---> FileName
※표기법 종류
- 카멜 표기법: 이어진 여러개 단어 중 두번째 단어부터 첫자를 대문자로 ex)fileName
- 헝가리안 표기법: 변수의 데이터형을 접두어로 사용하는 표기법 ex)str_fileName
2)예약어(키워드) 사용 불가
3)특수문자 _와 $만 가능
- 자바 파일은 파일명(클래스명)과 동일
ex) MainClass --> MainClass.java
.js(JavaScript)
.kt(Kotlin)
저장시 대소문자 구분, 한글 가능하지만 가급적 알파벳 사용(아스키 코드 환경에서 깨질 위험있음)
- 자바의 모든 프로그램은 반드시 main 포함
Main: 프로그램의 시작
public static void main(String[] args)
또는 static public void main(String[] args)
3. 진법/음수 표현
-8진법(0~) Integer.toOctalString( )
-16진법(0x~) Integer.toHexString( )
-2진법(0b~) Integer.toBinaryString( )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
public class 이진법 {
public static void main(String[] args) {
System.out.println();
int su=10;
String s="";
for(;;) {
int a=su%2;
s+=a+"";
su=su/2;
if(su==0)
break;
}
for(int i=s.length()-1;i>=0;i--) {
System.out.print(s.charAt(i));
}
}
}
|
cs |
-음수(~)
4. 주석
부가적인 설명을 적어두는 용도, 프로그램에서 인식하지 않음
1) 여러 줄 주석: /*
*/
2) 한 줄 주석: //
3) 블럭 지정된 전체에 한 줄 주석넣기/풀기: ctrl + / (줄 안바뀜)
4) 블럭 지정된 곳 전체에 여러 줄 주석 넣기(풀기): ctrl+shift+/(\)
▼파일명 앞에 *이 붙은 경우는 저장되지 않은 상태이므로 저장해야 함(ctrl+S)
+)단축키(ctrl+space)
main = public static void main(String[] args)
sysout = System.out.println()
5. \ 사용
입력 | 출력 | |
\ | System.out.println("C:\\javaDev\\javaStudy"); | C:\javaDev\javaStudy |
" , ' | System.out.println("\"이정후\""); | "이정후" |
한줄띄기 /간격두기 |
System.out.println("Hello\t"); System.out.println("Java!!\n"); System.out.println("It's me!"); |
Hello Java!! It's me! |
'Java > Java 이론 정리' 카테고리의 다른 글
[Java] 9~11일차: 제어문_(2)반복문/반복제어문 (0) | 2020.06.23 |
---|---|
[Java] 6~8일차: 제어문_(1)조건문 (0) | 2020.06.22 |
[Java] 4~5일차: 형변환, 연산자(Operator) (0) | 2020.06.18 |
[Java] 3일차: 자바출력메소드(print/Scanner/ \ ) (0) | 2020.06.17 |
[Java] 2일차: 변수_데이터형/변수 선언 및 초기화 (0) | 2020.06.16 |
댓글