변수, 자료형, 상수, 연산자의 큰 내용은 C와 같다.


새로 정리할 내용은
자동 형변환이다.


모든 연산자가 연산을 시작할 때 int 형으로 변환하고 연산을 한다.


그렇게 되면
byte나 short 같이 int형보다 작은 경우
연산을 위해 int형으로 바뀐 후
다시 더 작은 byte나 short 자료형으로 바뀔 때 컴파일 오류가 생기게 된다.
(주의할 것.)


연산자의 우선순위가 있다.


-> 연산순위를 고려해서 짜야한다. 중요한 부분은 () 치는 습관을 들여야한다.


새로 알게된 내용 중 하나 더 비트 연산자.


&          ->  비트단위로 AND연산을 한다.


|          ->비트 단위로 OR연산을 한다.
 
^           -> 비트단위로 XOR연산을 한다.


~           -> 모든 비트를 반전시킨다.

JAVA의 char (문자형)은 문자를 다루는데
유니코드를 지원한다.
Python은 아스키코드로 알고있는데, 유니코드가 다른점은 한글도 지원가능하다는 것이다.
아스키코드는 알파벳, 숫자까지였던거와 정말 좋은점이라 생각이든다.



오늘 공부 중 실수
책의 문제를 푸는 중간에

(코드)

 

(실행)

 

오류가.. 뜨는 것이다.
해결
: javac 컴파일은 .java 파일을 해야한다.
-> java 로 프로그램을 실행시킬 때는 .java가 필요 없었는데 착각했었다.
위 문구를 구글링해보니 바로 나왔다.

(참조 - [난 정말 JAVA를 공부한 적이 없다구요] , 윤성우)

 

java 공부 1일차 .java 파일의 컴파일에 대한 문제를 마주하게됬다.

보통 C와 다르게 JAVA는 OS(운영체제)에서가 아닌 Java Virtual Machine(자바가상머신)에서
동작한다. 그래서 C언어와 다른 점이 있다.

.java 파일로 코딩을 한 후,

javac을 실행하여 .java 파일을 자바 바이트코드로 바꾸어주어야한다.
( javac은 (java compiler)이다. )

자바 바이트코드로 바꾸어 준 후, (파일은 .class로 저장이 다시 된다.)
이 코드를 java.exe를 이용하여 실행시키면 된다.

간단하게 코드를 만들고 실행 시켜보려는 찰나
문제에 직면하였다.
1. 실행이 안된다..
나는 파일이름을 study.java 로 만들고
컴파일 후 프로그램을 돌려보니.. (java study입력.)

 

 

study 파일을 찾을 수 없다고 나온다.

 

 

해결
: 원인은 .java 파일 안의 코드에 있었다.

 

 

(내가 실행시키려던 코드)

 

.java 파일은 javac으로 컴파일 후 파일이름이 .class로 저장되는데 이 때 코드 안의 class이름으로 저장이 된다. 그렇기에 java SystemOutPrintln 으로 실행시켜야 된다.

 

(class 이름으로 저장된다.)

 

 

(실행)

 

정상적으로 실행이 된다.
그..런데..

2. 내가 원하던 값이 아니다. 나는 12라는 같은 값을 5개 출력하려 했다.
두번째 출력코드 라인
책에서는 + 연산자가 문자 그대로 연결시켜주기 때문에
1 + 3 이렇게 되면 13으로 출력이 된다고 했는데 그렇지 않았다.

해결
: 책에 있는 내용을 잘 보니 문자열이 속해있을 때 두 숫자가 합이 아닌 연결로 출력되는 것을 알 수 있었다.
즉,

 

 

("" 빈문자열을 추가한 코드)

 

이렇게 빈 문자열(  ""  )을 넣어주니

 

 

 

12로 출력 되었다.

결론
.jvav -> .class -> 실행
.class (파일 이름은 java 코드 안의 클래스 이름)

[난 정말 JAVA를 공부한 적이 없다구요] 책으로 공부 중 입니다.
(참조 - 난 정말 JAVA를 공부한 적이 없다구요, 윤성우)

+ Recent posts