«interface» 태그된 질문

인터페이스는 구성 요소와 지정된 상호 작용 지점을 나타냅니다. 인터페이스는 하드웨어 및 소프트웨어 레벨 모두에서 적용 가능합니다. --- 또한 ​​Java, C # 및 유사한 언어의 단일 상속에 대한 유일한 예외 인 언어 요소 '인터페이스'를 참조합니다.


30
인터페이스 대 추상 클래스 (일반 OO)
최근에 인터페이스와 추상 클래스의 차이점에 대해 두 번의 전화 인터뷰가있었습니다. 나는 내가 생각할 수있는 모든 측면을 설명했지만 특정 내용을 언급하기를 기다리고있는 것 같으며 그것이 무엇인지 모르겠습니다. 내 경험으로는 다음과 같은 것이 사실이라고 생각합니다. 중요한 점이없는 경우 알려주십시오. 상호 작용: 인터페이스에 선언 된 모든 단일 메소드는 서브 클래스에서 구현되어야합니다. 인터페이스에는 이벤트, …

30
“인터페이스 프로그래밍”이란 무엇입니까?
나는 이것이 몇 번 언급 된 것을 보았고 그것이 무엇을 의미하는지 명확하지 않다. 언제, 왜 이렇게 하시겠습니까? 나는 인터페이스가 무엇을하는지 알고 있지만, 이것에 대해 명확하지 않다는 사실은 내가 올바르게 사용하는데 빠졌다고 생각합니다. 당신이해야한다면 그냥 그렇습니까? IInterface classRef = new ObjectWhatever() 구현하는 클래스를 사용할 수 IInterface있습니까? 언제해야합니까? 내가 생각할 수있는 유일한 …


30
인터페이스 대베이스 클래스
언제 인터페이스를 사용해야하고 기본 클래스를 언제 사용해야합니까? 메소드의 기본 구현을 실제로 정의하지 않으려면 항상 인터페이스 여야합니까? 개와 고양이 수업이 있다면. PetBase 대신 IPet을 구현하고 싶은 이유는 무엇입니까? 애완 동물을 기준으로 애완 동물에 배치 할 수 있기 때문에 ISheds 또는 IBarks (IMakesNoise?)에 대한 인터페이스가 있음을 이해할 수 있지만 일반 애완 동물에 …


12
C # 인터페이스. 암시 적 구현과 명시 적 구현
인터페이스를 구현의 차이점은 무엇입니까 암시 적 및 명시 적으로 C #으로는? 언제 암시 적으로 사용해야하고 언제 명시 적으로 사용해야합니까? 하나 또는 다른 것에 대한 장단점이 있습니까? Microsoft의 공식 지침 (1 판 Framework Design Guidelines ) 은 코드에 예기치 않은 동작을 제공하므로 명시적인 구현 을 사용하지 않는 것이 좋습니다 . 이 …
632 c#  .net  interface 



15
사용시기 : Java 8+ 인터페이스 기본 방법과 추상 방법
Java 8에서는 Default Methods 라는 인터페이스에서 메소드의 기본 구현을 허용합니다 . 나는 (with ) interface default method대신 언제 그런 종류의을 사용할 것인지 혼동 합니다.abstract classabstract method(s) 그렇다면 언제 기본 메소드와의 인터페이스를 사용해야하고 추상 클래스 (추상 메소드와 함께)를 사용해야합니까? 해당 시나리오에서 추상 클래스가 여전히 유용합니까?

24
Java 인터페이스에서 정적 메소드를 정의 할 수없는 이유는 무엇입니까?
편집 : Java 8부터는 인터페이스에서 정적 메소드가 허용됩니다. 예를 들면 다음과 같습니다. public interface IXMLizable<T> { static T newInstanceFromXML(Element e); Element toXMLElement(); } 물론 이것은 작동하지 않습니다. 그런데 왜 안 되 겠어요? 가능한 문제 중 하나는 전화를 걸 때 발생하는 일입니다. IXMLizable.newInstanceFromXML(e); 이 경우 빈 메소드 (예 : {})를 호출해야한다고 …


29
Interface와 Abstract 클래스의 차이점을 어떻게 설명해야합니까?
인터뷰 중 하나에서 인터페이스 와 추상 클래스 의 차이점을 설명하라는 요청을 받았습니다 . 내 대답은 다음과 같습니다. Java 인터페이스의 메소드는 내재적으로 추상적이며 구현할 수 없습니다. Java 추상 클래스에는 기본 동작을 구현하는 인스턴스 메소드가있을 수 있습니다. Java 인터페이스에서 선언 된 변수는 기본적으로 final입니다. 추상 클래스에는 비 최종 변수가 포함될 수 있습니다. …

15
인터페이스의 메소드 구현을 @Override해야합니까?
인터페이스 메소드를 구현하는 메소드에 주석을 달아야 @Override합니까? 주석 의 javadoc은 다음과 같이Override 말합니다. 메소드 선언이 수퍼 클래스에서 메소드 선언을 대체하도록되어 있음을 나타냅니다. 이 어노테이션 유형으로 메소드에 주석이 달렸지만 수퍼 클래스 메소드를 대체하지 않는 경우, 컴파일러는 오류 메시지를 생성해야합니다. 인터페이스가 기술적으로 수퍼 클래스라고 생각하지 않습니다. 아니면? Question Elaboration


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.