Java

[Java] java 키워드 중 새로 배운것. assert, native, strictfp, volatile

Razelo 2020. 12. 12. 14:15

자바 키워드를 나열해놓은 것을 따라 읽다가 처음 본게 있어서 적어본다. 

 

assert, native, strictfp, volatile 

보통 널리 알려진 자바 기본 서적에서도 이걸 다루는 건 못봤다. 적어도 내가 읽은 책들에 한해서^^ 

 

native 같은 경우는 자바에서 다른 언어를 사용할 수 있게 만들어주는 키워드라고 한다. 

mommoo.tistory.com/71 여기에 진짜 잘 설명되어있음..

 

JVM은 만능이라고만 믿어왔는데, 운영체제에 깊게 접근하지 못해서 결국에는 운영체제에 깊은 접근이 가능한 언어를 사용하기 위해 JNI를 사용해서 native 키워드가 사용되는 것을 보면, 결국에 만능은 없는듯하다. 

 

 

JAVA - JNI 사용하기

오늘 포스팅은 Java JNI ( Java Native Interface) 입니다. 자바는 특정 운영체제에 종속되지 않도록, JVM이라는 가상머신 위에서 실행되게끔 만들어진 언어입니다. 운영체제에 맞는 JVM이 각기 존재하기

mommoo.tistory.com

 

 volatile 은 thread 에서 사용되는것인데, cpu cache와 메인메모리에서의 read & write상에서의 불일치를 해결하기 위해 사용되는 키워드이다. (성능에 영향을 줄 수 있는 키워드라고 한다. 그러니 제한적으로 꼭 필요한 상황에서만 사용하자.)

 

nesoy.github.io/articles/2018-06/Java-volatile

 

Java volatile이란?

 

nesoy.github.io

 

여기에 잘 정리되어있다. 개인적으로 thread에 약한데, 상당히 흥미롭게 읽었다. 

 

strictfp는 정말 간단한 개념인데, 자바와 타 플랫폼간의 부동소수점의 정밀도를 맞춰주기 위한 키워드이다. 다른 플랫폼과 자바는 부동소수점에서 오차가 발생할 수 있는데, 이 키워드를 사용하면 해결된다. 클래스, 인터페이스, 메서드의 앞머리에 선언해서 사용할 수 있다.

 

sumin172.tistory.com/128

 

 

strictfp 접근제한자 : Strict Floating Point(엄격한 부동소수점)

플렛폼 간 부동소수점 연산의 결과를 동일하게 해주는 strictfp(Strict Floating Point) 접근제한자 자바언어는 플랫폼이 자바의 double형보다 더 많은 지수 비트를 제공하는 부동소수점 방식을 사용할

sumin172.tistory.com

 

여기에서 잘 정리되어 있다. 

 

assert 이건 좀 어려운 개념인 것 같다. 사실 계속 읽었는데, 좀 헷갈린다.  예외처리랑은 살짝 다르다. 음... 내가 완전히 확신하고 또 그래야만 하는 수식이 있다면, 불리언 형식으로 사용하는 키워드라고 보면된다. 밑에 블로그에 잘 정리되어 있다.

 

javacan.tistory.com/entry/79

 

자바 1.4의 새기능: Assertion

1.4에 새롭게 추가된 Assertion이 무엇이며 어떻게 사용하는지에 대해서 살펴본다. Assertion 기본 자바 1.4 버전은 1.3 버전에 보안을 비롯한 다양한 확장 API를 추가하여 그 크기가 방대해졌을 뿐만 아

javacan.tistory.com

 

반응형