객체는 모든 클래스의 부모 클래스이며 모든 클래스는 기본적으로 객체를 상속합니다. 객체 클래스는 어떤 방법을 구현합니까?
1. 클론 방법
객체의 얕은 복사를 구현하는 보호 방법. 이 방법은 클로닝 가능한 인터페이스를 구현 하여만 호출 할 수 있으며, 그렇지 않으면 ClonenOnsUpportedException 예외가 발생합니다.
2. GetClass 메소드
최종 방법, 런타임 유형을 얻으십시오.
3. 토스트 링 방법
이 방법은 더 자주 사용되며 일반적으로 서브 클래스를 재정의합니다.
4. 메소드를 마무리하십시오
이 방법은 리소스를 확보하는 데 사용됩니다. 방법이 호출되는시기를 결정하는 것은 불가능하기 때문에 거의 사용되지 않습니다.
5. 방법
이 방법은 매우 중요한 방법입니다. 일반적으로 평등하고 ==는 다르지만 객체에서는 두 사람이 동일합니다. 서브 클래스는 일반적 으로이 방법을 다시 작성해야합니다.
6. 해시 코드 방법
이 방법은 해시 검색에 사용됩니다. Equals 메소드가 다시 작성되면 해시 코드 메소드는 일반적으로 다시 작성됩니다. 이 방법은 해싱 기능이있는 일부 컬렉션에서 사용됩니다.
일반적으로 obj1.equals (obj2) == true를 충족해야합니다. obj1.hash-code () == obj2.hashcode ()를 소개 할 수 있지만 동일 해시 코드가 반드시 동등한 것을 만족시키는 것은 아닙니다. 그러나 효율을 향상시키기 위해서는 상기 두 가지 조건이 동등한 상태로 유지되어야합니다.
7. 대기 방법
대기 방법은 현재 스레드가 물체의 잠금을 대기하도록하는 것입니다. 현재 스레드는 객체의 소유자, 즉 객체의 잠금 장치 여야합니다. 잠금 장치가 얻어 지거나 중단 될 때까지 대기 () 메소드가 대기합니다. 대기 (Longtimeout)는 시간 초과 간격을 설정하고 지정된 시간 내에 잠금이 얻어지지 않으면 반환됩니다.
이 방법을 호출 한 후 다음 이벤트가 발생할 때까지 현재 스레드가 잠들게됩니다.
(1) 다른 스레드는 객체의 알림 메소드를 호출합니다.
(2) 다른 스레드는 오브젝트의 Notifyall 메소드를 호출합니다.
(3) 다른 스레드는 인터럽트를 호출하여 스레드를 방해합니다.
(4) 시간 간격이 도착했다.
현재 스레드를 예약 할 수 있습니다. 중단되면 중단 예고가 발생합니다.
8. 메소드 알
이 방법은 물체를 기다리는 실을 깨우고 있습니다.
9. Notifyall 메소드
이 방법은 물체를 기다리는 모든 실이 깨어납니다.
-물체-
분류 Archy에 대한 Classobjective Theroot.
-설명-
객체 클래스는 Java의 모든 객체가 상속받은 부모 클래스이며, 배열은 부모 클래스를 상속합니다 (원래 클래스, 모든 클래스의 조상으로 이해 될 수 있습니다. 제임스가 제임스가 쓴 첫 번째 클래스입니까?).
모든 클래스는 객체 클래스를 암시 적으로 상속하므로 볼 수 없습니다.
-물체-
기본 생성자
—Clone -
``동일 - -
이 thisone의 "평등"을 나타냅니다.
Theequalsmethodimmplions sanequivalence onnon-nullobjectreferences :-Fromoracle-
원래 클래스 객체의 동등한 것은 참조를 두 변수의 비어있는 객체와 비교합니다.
소스 코드 :
public boolean Equals (Object obj) {return (this == obj); }소스 코드를 통해 원래 클래스 평등이 실제로 "=="와 동일하다는 것을 알 수 있습니다.
—Finalize -
``징수 - 신경 - -
- 하쉬 코드 -
thejava 프로그래밍 언어, everyclassintoasinglehashshashvalue (a32-bitsignedinteger)의 인스턴스 인 인스턴스 인 인스턴스를 사용하는 thishashishode는 thishashishashode를 사용하여 thishashishissed thishashissed thistormanipuledertobeletendestendestendestedtestionedtectedtestionedtedipedectediplederdectedipledertestedipedectediplederdectediplederdectedipledertedipedibledectedipledercedipledertedipledectedipledertedize ForuseInclustering.이 프로페티브는 해시블 및 기타 시나프라의 성능에 따라 ( "버킷") techniceputehashvalues를 기반으로합니다 DefaultisanativeMethod, 의미, ITHASTHEMODIFIER'NITATIOL ', asitisimplementEdEdiveCodeinthejvm.
출처 : Wikipedia
Java의 각 클래스는 암시 적 또는 명시 적으로 객체의 해시 코드 방법을 구현합니다.
Google 및 공식 개인으로 요약하기 위해 저자는 왜 원래 클래스에 해시 코드를 가지고 있습니까?
①. 클래스 객체의 스토리지 최적화 클래스 객체의 검색을 용이하게합니다.
②. 동등한 사용.
참고 : 많은 블로그에서 해시 코드 메소드가 클래스의 물리적 저장소 주소 또는 논리적 저장소 주소를 반환한다고 말합니다. 이 진술은 잘못되었습니다. 공식 성명서에 따르면 반환 된 32 비트 값은 클래스 객체의 저장 위치와 관련이 있습니다.
- - 대신 - -
- - NOTIFYALL -
- 토스스트링 -
클래스 객체에 대한 tostring 방법은 클래스의 이름, geat-signcharacter` 및 객체의 해시 코드의 서명되지 않은 헥사 소수점 표현으로 구성된이 메소드가 다음의 값과 동일하게 반환됩니다.
getClass (). getName ()+'@'+integer.toHexString (hashcode ())
소스 코드 :
public String toString () {return getClass (). getName () + "@" + integer.toHexString (hashCode ()); }클래스의 형식 클래스 이름 +@ +에서 해시 값을 반환합니다.
-기다리다-
finalize ()
요약
위는 java.lang.object java 소스 코드에 대한이 기사의 전체 내용입니다. 모든 사람에게 도움이되기를 바랍니다. 관심있는 친구는이 사이트의 다른 관련 주제를 계속 참조 할 수 있습니다. 단점이 있으면 메시지를 남겨 두십시오. 이 사이트를 지원해 주신 친구들에게 감사드립니다!