자바가 직면하지 않습니다 질문에 잘못 또는 요약

1. 8 개 가지 기본 데이터 카테고리 및 패키지 크기의 종류 (바이트)

答 : 바이트 1 바이트

2 짧은 단락

INT 정수 4

긴 긴 팔

플로트 플로트 4

8 더블 더블

문자 문자 2

부울 부울 - 부울는 JVM int 데이터 타입으로 컴파일 될 것이다 (부울 JVM은 "자바 가상 머신 사양"을 기반으로, 데이터의 형식이 아닙니다 대신, 부울 배열, 부울 각각 8 차지, JVM 바이트 배열로 컴파일됩니다 따라서 단독 부울 4 바이트를 차지하고 있지만, 부울 부울 각각 1 바이트의 배열)

즉, JVM 사용하는 이유 INT 대신, 그것은 부울 더 바이트보다 작거나 짧은 메모리 공간을 절약하기 위해? 사실, 현재 INT 32 비트 CPU 이유 (여기서 32/64 비트 시스템 않고, 하드웨어 레벨에서 CPU로 지칭), 높은 액세스 특성을 갖는

 

2.이 질문에 잘못, 정답은 밖으로 이해 게시

. (1)          // INT의 Y = X + ++ ++ X, X ++ 제 4, 그리고이 단계는 5가되고, 완료하기 위해 다음 ++ × 6이므로 10 Y
 2          // 경우 INT Y = X + ++ X ++ 10의 결과이지만 처리는 동일하지 : 제 ++ x는 5 다음 X ++도 5이다 
. (3)          INT . X = 4 ]
 . 4          INT Y = X ++ + ++ X; // .. Y의 = 4 + 6 = 10, X의 마지막 값 6. 
5.          에서 System.out.println은 (X + Y + X ++ ++); // . + 7 + 10 24 7 24 정도로 인쇄 =

 

3. ==와 동등한 차이

난. 일반, 기본 데이터 유형과 비교 ==에 비해 동일

. 두 변수 또는 예를 분석 이이 ==는 동일한 메모리 공간에 관한되지 않고, 상기 메모리 어드레스와 비교되고, 판정 값은 두 변수 또는 메모리 공간 인스턴스 동일 같다

III. == 동일한 참조 여부에 동일한 값이 결정되는 동일 결정 단순히

 

X 4 클래스는 클래스 B가 변경 (이들 공용, 전용) 클래스 A, 액세스 수식 클래스 B의 X 메소드를 상속 방법 하였는가? 방법을 변경하려면?

A : 부모 클래스 방법 피하기 때문 만 공개 될 수있는 클래스가 변형 보호되어 더 표시, 예를 들어, 방법 (X) (A)의 방향으로 만 변경 X의 B 클래스 메서드 표시 및 서브 클래스에 보이지

 

5. 클래스는 메소드 x는 예외를 던져했다, 클래스 B가 클래스 A를 상속 x는 방법, 당신은 예외를 발생 싶은 질문을 무시?

A : 드로우 다운 만, 이러한 X 예외 투사 방법 A, 방법 B 던져 예외 : InterruptedException 같은 클래스 X 방법의 즉 투사 예외 서브. X의 방법 B 던져 예외가 비정상적인 부모가 그래서 만약 부모 클래스의 메소드는,이 예외에게 X의 방법을 잡을 수 없을 때 컴파일러가 캡처의 하위 클래스 메서드 호출에 이상이 필요하기 때문입니다

 

수정 차이 이러한 6. 공공, 보호, 기본, 개인 액세스

A : 공공 "공개"와 수정 클래스의 모든이, 모든 클래스의 속성과 메소드에 액세스 할 수 있습니다 (다른 패킷 클래스와 유사한 다른 패키지가 아닌 자식 클래스의 다양한 패키지를 서브 클래스)

보호 : "보호 된 형태"가 될 수 없습니다 (다른 패키지가 아닌 자식 클래스) 액세스 액세스 (학년, 다른 패킷 클래스와, 다른 패키지를 하위 클래스)는 클래스, 속성을 수정하고 방법이 될 수있다

기본값 : 클래스를 수정 "기본 액세스 모드", 액세스 (패키지의 다른 종류, 등급) 속성 및 방법이 될 수있다, (다른 패키지의 서브 클래스, 다른 비 자식 클래스의 패키지) 액세스 할 수 없습니다

개인 : "개인", 그것은 클래스, 속성을 수정하고 방법 만이 클래스의 객체에 액세스 할 수 있습니다, 다른 클래스는 게터, 세터 메소드를 사용하여 전용 속성에 액세스하기

 

7. 초기화 순서 (자신이 코드를 주어진 제목, 클래스 B가 클래스 A를 상속, 새로운 클래스 B의 두 가지 주요 방법은 인쇄 할 것을 요청)

A : (번만 호출) 코드 (한번만라고도 함)는 상위 클래스의 정적 속성> 부모 클래스 정적 블록> (번만 호출) 서브 정적 속성> 코드 서브 정적 블록 (한번 호출 만)

> 부모 클래스 코드 블록 비 정적> 부모 클래스 생성자> 서브 블록 비 정적> 서브 클래스 생성자

 

 

첫째, 2019 년 10 월 16 일에 작성

부울을 int로 대신 왜 가상 머신을 사용할 수 있습니까? 왜 바이트 또는 짧은, 그래서 더 많은 메모리 공간을 절약하지 않습니다. 대부분의 사람들은 자연스럽게 여기 (사용하지 않을 INT 이유는 현재 32 비트 프로세서 (CPU)에 대해, 데이터 처리 시간은 32 점이다, 해당 정보에 대한 액세스를 통해, 나는 또한,이 질문을 생각할 것이다 32/64 비트 시스템을 지칭 아니라 효율적인 액세스의 특성을 갖는) 하드웨어 수준의 CPU를 지칭한다.

추천

출처www.cnblogs.com/LittleMike/p/11689003.html