머리말
C ++와 달리 Java 언어는 단일 뿌리 상속 구조 언어로 Java의 모든 클래스에는 공통 조상이 있음을 의미합니다. 이 조상은 객체 클래스입니다.
객체 클래스는 신의 클래스라고도하며 신의 클래스라고합니다. Java 클래스를 정의 할 때, 상위 클래스가 지정되지 않으면 객체 클래스는 기본적으로 상속됩니다. Java의 Up-Type 변환으로 객체 클래스의 도움으로 많은 작업을 수행 할 수 있습니다.
객체 클래스의 구조
객체 클래스의 방법
객체 클래스에는 getClass (), toString () 및 equals ()와 같은 몇 가지 일반적으로 사용되는 방법이 있습니다. Object.java에서의 구현은 다음과 같습니다.
public final native class <?> getclass (); public boolean equals (object obj) {return (this == obj);} public String toString () {return getClass (). getName () + "@" + integer.toHexString (hashcode ());}getClass ()의 경우 런타임에 클래스를 얻을 수 있습니다.
Equals ()는 일반적으로 비교에 사용됩니다. 객체 클래스에서는 참조를 비교하고 참조가 동일 한 경우에만 참 True를 반환합니다. 그러나 이것은 우리가 원하는 비교의 경우가 아닙니다. 예를 들어, 문자열의 비교는 각 문자가 동일한 지 비교하는 것입니다. 그런 다음 string 클래스에서 equals () 메소드가 다시 작성됩니다. 문자열 클래스에서 equals () 메소드의 구현은 다음과 같습니다.
public boolean Equals (Object Anobject) {if (this == anobject) {return true; } if (anobject instancef string) {string anotherstring = (string) anobject; int n = value.length; if (n == anotherstring.value.length) {char v1 [] = value; char v2 [] = anotherstring.value; int i = 0; while (n-! = 0) {if (v1 [i]! = v2 [i]) 거짓/; i ++; } true를 반환합니다. }} return false;}현의 비교는 여러 번 이루어졌습니다.
1. 첫째, 참고 문헌이 동일하다고 판단하고 동일하다면 TRUE를 반환하십시오.
2. 들어오는 객체가 문자열인지 결정하십시오. 문자열이 아닌 경우 직접 False를 반환합니다. 그것을 비교할 필요가 없으며, 개와 인간을 어떻게 비교할 수 있는지;
3. 문자열의 길이를 비교하십시오. 두 줄의 길이가 다르면 비교할 필요가 없습니다. 다른 길이는 분명히 다릅니다.
4. 위의 비교가 사실이 아니라면, 문자 별 비교가 이루어집니다.
두 객체를 비교하려면 일반적으로 문자열 클래스에서 equals () 메소드와 같은 equals () 메소드를 다시 작성해야합니다.
세 번째 메소드 tostring ()은 기본적으로 객체 클래스에서 현재 런타임 클래스와 해시 코드를 출력하여 특히 도움이되지 않습니다. 스스로 작성된 수업의 경우 클래스의 모든 속성을 출력 할 수 있습니다. toString () 메소드를 다시 작성한 후 System.out.println ()을 직접 사용하여 개체 이름을 전달할 수 있으며 기본적으로 개체의 toString () 메소드를 호출 할 수 있습니다.
초보자로서, 당신은 끊임없이 코드를 작성하고, 당신의 인상을 심화시키기 위해 배운 많은 것을 기록해야합니다. 또한 잊어 버릴 때 쉽게 검색하고 여기에서 녹음하고 언제든지 편리하게 만들 수 있도록 편리하게 만들어야합니다!
요약
위는이 기사의 전체 내용입니다. 이 기사의 내용에 모든 사람의 연구 나 작업에 대한 특정 참조 가치가 있기를 바랍니다. 궁금한 점이 있으면 의사 소통을 위해 메시지를 남길 수 있습니다. Wulin.com을 지원 해주셔서 감사합니다.