- JDK와 JRE의 차이점은 무엇입니까?
* jre는 jvm을 포함한 자바 실행 환경일 뿐 실질 개발을 할 수 없고 컴파일러 등 개발에 필요한것들 + jre를 포함한 것이 JDK 이다.
- ==와 equals의 차이점은 무엇입니까>
* ==는 메소드의 주소값을 비교하고 equals는 값 자체를 비교한다.
- 두 객체가 동일한 hashCode를 가지면 Equals()가 참이어야 합니다. 그렇죠?
* 아닙니다. 버킷(해시값 저장하는 곳)의 용량에 의한 해시충돌이 발생했을 경우 서로 다른 객체임에도 해시코드가 같은 경우가 있을 수 있습니다.
- 자바에서 final 기능은 무엇입니까.
* 기본적으로 상수를 선언할때 상용합니다.
- 자바에서 Math.round(-1.5)는 무엇을 의미합니까?
* -1을 의미합니다.
- String은 기본 데이터 타입입니까?
* 아니요
- 자바에서 문자열을 조작하는 클래스는 무엇이 있습니까? 각 클래스의 차이점은 뭘까요?
* String, char이 있습니다. char의 경우는 기본형 타입으로 하나의 문자를 다루는 것이고 string의 경우 객체를 선언하여 문자 들을 문자열로 바꾸어 다룹니다.
- String str = "i" 와 String str = new String("i") 가 동일 합니까?
* 동일 하지 않습니다. 다만 동등합니다. 이유는 string 객체를 새롭게 생성했기 때문에 주소값이 다르게 할당됩니다.
- 문자열을 반전시키는 가장 좋은 방법은 무엇인가요?
* 가장 좋은 방법인지는 모르겠으나 버퍼(stringbuffer)에 담아 반전시키는 방법이 가장 일반적인 것으로 알고 있습니다.
- String 클래스의 일반적인 메서드는 무엇이 있나요?
* equals, replace, length, indexOf 등이 있습니다.
- 추상클래스에서 추상 메서드는 필수적인가요?
* 아닙니다. 일반 메서드와 혼합하여 사용가능합니다.
- 보통의 클래스와 추상 클래스의 차이는 무엇인가요?
* 추상 메서드작성이 가능한것이 가장 큰 차이로 생각하며 인스턴스화 여부도 차이라고 생각합니다.
- final은 추상 클래스를 수정할 때 사용할 수 있나요?
* final이 선언되면 더이상 추상 클래스는 수정할 수 없습니다.