2010-05-04 4 views
1

동일한 속성과 메소드를 가진 객체가 같은 클래스에 속해 있습니까?동일한 속성과 메소드를 가진 객체가 같은 클래스에 속해 있습니까?

  1. 내가 같은 방법과 속성을 가진 두 개의 동일한 클래스를 선언 할 수 없습니다,이를 실체화하고 "같은 속성과 메소드가 다른 클래스에 속하는와 객체"가?

  2. 클래스 A와 서브 클래스 B (클래스 A의 자식)는 모두 동일한 메서드 및 특성 (클래스 B에 새 특성 또는 메서드를 선언하지 않음)을 선언 할 수 없습니다. 그것들을 인스턴스화하고 ""같은 속성과 메소드를 가진 객체가 일까요?

이 질문은 우수 사례에 관한 것이 아니라 제목에 대한 논리적 가치 (true 또는 false)에 관한 것입니다.

답변

1

당신이 말하는 언어를 지정하지 않았습니다. 아마도 여러분이 설명하는 속성을 가진 이국적인 언어가있을 것입니다. 적어도 Java 및 C++과 같은 언어에서는 두 클래스가 선언하는 메소드/인스턴스 변수를 기반으로 두 클래스가 "동일합니다"라는 개념이 없습니다.

그래서 대답은 "아니요, 그들은 똑같은 것처럼 보이지만 같은 등급이 아닙니다"입니다.

서브 클래스의 경우는 조금 다르다 : 당신은 (어떤 방법이나 변수를 추가하지 않고) A의 서브 클래스로 B를 선언하는 경우, 그들은 여전히 ​​서로 다른 클래스입니다뿐만 아니라 클래스 B "is-a"A의 대상, 일반적인 상속 규칙 때문입니다.

1

확실하게 가능합니다.

class A 
{ 

    public string Property1{get;set;} 
    public string Method1(int value) 
    { 
     ...... 
    } 

} 

class B 
{ 
    public string Property1{get;set;} 
    public string Method1(int value) 
    { 
    ........ 
    } 
} 

두 클래스가 동일합니다. 동일한 속성과 메서드를 사용하십시오. 그러나 그들의 경우는 다를 것입니다.

관련 문제