2014년 6월 27일 금요일

[오라클자바커뮤니티주말JAVA교육학원입니다. 자바주말기초,초보자교육학원추천,JAVA초보개발자학원주말평일야간주간교육,JAVA Equals]Object 비교,객체내용비교 (Object equals,자바 OBJECT),오라클자바커뮤니티 오프라인교육장 자바강좌 잘 배워보세요~

[오라클자바커뮤니티주말JAVA교육학원입니다. 자바주말기초,초보자교육학원추천,JAVA초보개발자학원주말평일야간주간교육,JAVA Equals]Object 비교,객체내용비교 (Object equals,자바 OBJECT),오라클자바커뮤니티 오프라인교육장 자바강좌 잘 배워보세요~

- boolean equals(Object obj)
두 객체가 같은지 비교
실질적으로 두 객체의 내용이 같은지를 검사 하려면 equals() 메소드를 오버라이드 해서 객체가 포함하고 있는 내용을 비교
Java.lang.equals() 메소드를 살펴보면
 public boolean equals(Object obj) {
  return (this == obj);//결국 equals()를 overriding하지     //않는 한 equals()와 ==의 차이는 없다.
 }
Java.lang.String 경우는 equals() 메소드를 재정의 하여 다음과 같이 정의하고 있다. public boolean equals(Object?anObject)
 Compares this string to the specified object. The result is true if and only if the argument is not null and is a String object that represents the same sequence of characters as this  object.
실질적으로 두 객체의 내용이 같은지를 검사 하려면 equals() 메소드를 오버라이드 해서 객체가 포함하고 있는 내용을 비교
- Object 클래스의 equals 함수는 객체의 레퍼런스 값을 비교
return this == obj

package a.b.onjweb;
class NOTEQUAL // `extends Object'가 자동 삽입됨
{
    int v;
    NOTEQUAL(int value) {
        v = value;
    }
}
class EQUAL // `extends Object'가 자동 삽입됨
{
    int v;
    EQUAL(int value) {
        v = value;
    }
    public boolean equals(Object obj) {
        return (obj != null) && (v == ((EQUAL) obj).v);
    }
}
public class EqualTest // `extends Object'가 자동 삽입됨
{
    public static void main( String[] args )
    {
     NOTEQUAL ne1 = new NOTEQUAL(100);
     NOTEQUAL ne2 = new NOTEQUAL(100);
   
        System.out.println( ne1 == ne2 );      // 참조값 비교
        System.out.println( ne1.equals(ne2) ); // 참조값 비교
        EQUAL e1 = new EQUAL(100);
        EQUAL e2 = new EQUAL(100);
       
        System.out.println( e1 == e2 );        // 참조값 비교
        System.out.println( e1.equals(e2) );   // 내용 비교
        String s1 = "abc", s2 = "ab", s3 = "c", s4 = s2 + s3;
        System.out.println( s1 == s4 );        // 참조값 비교
        System.out.println( s1.equals(s4) );   // 내용 비교
    }
}
 
[결과]
false
false
false
true
false
true

오라클자바커뮤니티교육센터, 개발자전문교육, 개인80%환급
www.oraclejavacommunity.com


평일주간(9:30~18:10) 개강
(6/30)[기업100%환급]PL/SQL,ORACLE HINT,TUNING[개강확정]
(6/30)[기업100%환급]안드로이드개발자과정[개강확정]
(7/07)[기업100%환급]C#4.0,WinForm,ADO.NET프로그래밍
(7/07)[기업100%환급]Spring ,MyBatis,Hibernate실무과정[개강확정]
(7/07)[기업100%환급]자바기초에서 JDBC, Servlet/JSP까지 
(7/07)[채용예정교육]오라클자바개발잘하는신입뽑기프로젝트,교육전취업확정
(7/14)[기업100%환급]SQL기초에서 Schema Object까지

평일야간(19:00~21:50) 개강
(7/01)안드로이드개발자과정[개강확정]
(7/01)닷넷(C#,Network,ADO.NET,ASP.NET)마스터과정
(7/02)Spring3.X, MyBatis, Hibernate실무과정[개강확정]
(7/02)자바웹(JSP,Spring,MyBatis,XPlatform)프로젝트과정
(7/02)JAVA,Network&WEB&Framework(자바기초에서웹스프링까지)
(7/03)웹퍼블리싱 마스터
(7/15)SQL기초에서실무까지
(7/15)MyBatis3.X, Hibernate4.X ORM실무과정
(7/22)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지

주말(10:00~17:50) 개강
(6/28)Spring3.X, MyBatis, Hibernate실무과정[개강확정]
(6/28)안드로이드개발자과정
(6/29)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지[개강확정]
(7/05)SQL초보에서 Schema Object까지
(7/12)자바웹(JSP,Spring,MyBatis,XPlatform)프로젝트과정
(7/12)MyBatis3.X, Hibernate4.X ORM실무과정
(7/12)개발자를위한PLSQL,SQL튜닝,힌트
(7/13)C#,ASP.NET마스터
(7/19)웹퍼블리싱 마스터

주말저녁(18:30~22:20) 개강
(7/19)JAVA,Network&WEB&Framework
(8/09)SQL기초에서실무까지

댓글 없음:

댓글 쓰기