오늘 저는 참조 내용을 포함하여 Java의 추상 수업과 인터페이스에 대한 내 자신의 이해에 대해 이야기 할 것입니다.
1. 초록 수업
1. 정의 :
공개 초록 클래스 클래스 이름 {}
Java 언어의 모든 객체는 클래스에 의해 설명되지만 모든 클래스가 객체를 설명하는 데 사용되는 것은 아닙니다. 내가 이해하는 추상 클래스는 실제로 속성과 행동을 포함하여 동일한 유형의 사물의 공공 부분에 대한 높은 수준의 추출입니다. 예를 들어, 가축, 양 및 돼지는 모든 대중의 속성을 가지고 있으며, 대중의 행동은 모두 모유 수유이므로, 우리는 분위기, 머리카락 및 행동을 포함하는 포유류로 대중 부분을 추상화 할 수 있습니다. 소, 양 및 돼지가 포유류를 물려 받으면 모유 수유 기능도 있습니다. 이 기능을 완료하는 방법에 대해서는 스스로 구현해야합니다.
2. 기능
(1) 추상 키워드로 수정 된 클래스는 추상 클래스입니다.
(2) 추상 방법을 포함하는 클래스는 추상 클래스이어야하지만, 추상 클래스에는 반드시 추상적 인 방법이 포함되어 있지는 않습니다. 추상적 인 방법은 공개적이거나 보호되어야하며, 그렇지 않으면 서브 클래스에 의해 상속 될 수 없습니다. 기본값은 공개됩니다.
(3) 추상 방법에는 구현이있을 수 없으며, 그렇지 않으면 편집이보고됩니다.
(4) 추상 클래스에서 자신의 멤버 변수 및 멤버 메소드를 정의 할 수 있습니다.
(5) 서브 클래스가 추상 클래스를 상속 할 때, 추상 클래스의 모든 추상적 방법을 구현해야합니다. 그렇지 않으면 서브 클래스는 추상 클래스로 정의되어야합니다.
(6) 추상 클래스는 인스턴스화 할 수 없습니다.
3. 위의 조항이 실제로 언급 된대로 확인
이것은 단어로 편집 한 검증 테이블이며 이미지로 자르고 여기에 넣습니다.
위의 그림에서 확인 결과로 판단하면 이러한 이론은 정확합니다.
2. 인터페이스
1. 정의 :
공개 인터페이스 인터페이스 이름 {}
인터페이스는 메소드를 제공하는 데 사용됩니다. 내 이해에 따르면, 그것은 여러 계급의 대중 행동에 대한 높은 수준의 추출입니다. 예를 들어, 모든 동물의 대중의 행동은 먹고 자고 있습니다. 그런 다음 한 인터페이스 에서이 두 동작을 추출하고 캡슐화 할 수 있습니다. 동물 이이 행동을 수행 해야하는 경우 인터페이스를 호출 한 다음 자체 클래스에서 특정 구현을 완료하십시오. 이러한 이해는 추상 수업과 다르지 않은 것처럼 보이므로 다음 예를 살펴 보겠습니다. 이 두 가지 행동이 추상 클래스에 배치되면 추상 클래스에는 크롤링 행동도 있습니다. 이 시점에서 뱀과 같은 파충류 가이 수업을 물려 받으면 세 가지 식사, 수면 및 크롤링 방법을 깨닫게되므로 식사, 수면 및 크롤링 기능이 있습니다. 그러나 비행 계급의 동물이 새와 같다면,이 방법을 물려 받으면 먹고 자고 기어 다니는 기능도 있습니다. 크롤링은 필요한 기능이 아니라는 것이 분명합니다. 이는 약간 불일치합니다. 그러나 먹고 수면의 인터페이스 만 물려 받으면 식사와 수면의 기본 기능이 있습니다. 등반 및 비행과 관련하여, 그들은 추상적 인 수업에 추상화되고, 주문형으로 상속되며, 요구에 필요한 기능을 깨닫게 될 수 있습니다.
2. 기능 :
(1) 인터페이스에는 자체 멤버 변수가있을 수 있지만 공개 정적 결승으로 암시 적으로 지정되며 공개 정적 최종 만 가능합니다. 인터페이스의 모든 방법은 추상적 인 방법이며 암시 적으로 공개 초록으로 지정됩니다.
(2) 초록 방법 만 인터페이스에 정의되며 구체적인 구현은 없습니다.
(3) 인터페이스를 구현하는 클래스는 인터페이스에 정의 된 모든 방법을 구현해야합니다.
3. 위 이론이 올바른지 확인하십시오
마찬가지로 위의 이론은 모두 정확합니다!
3. 추상 클래스와 인터페이스의 차이점 :
1. 초록 클래스는 자체 회원 방법과 특정 구현을 가질 수 있습니다. 인터페이스에는 추상 방법 만 포함 할 수 있습니다.
2. 초록 클래스에는 다양한 유형의 멤버 변수가 포함될 수 있습니다. 인터페이스의 멤버 변수는 공개 정적 최종 일 수 있습니다.
3. 클래스는 하나의 추상 클래스 만 상속받을 수 있지만 여러 인터페이스를 구현할 수 있습니다.
4. 초록 클래스에는 정적 코드 블록과 정적 메소드가 포함될 수 있습니다. 정적 코드 블록 및 정적 메소드는 인터페이스에서 정의 할 수 없습니다.
클래스가 하나의 추상 클래스 만 상속받을 수 있지만 여러 인터페이스를 구현할 수 있는지 확인하십시오.
첫째, 두 가지 추상 클래스 정의 : 미라 포유 동물과 크롤러 파충류 클래스
/** * @CreateTime 2017 년 3 월 17 일 오전 10:33:27 AM * @description mammals */public thrack class mammals {public string foods; public actract void nurse (); public void eat (string food) {food; system.out.println ( "Eat"+Foods);}}}}}}}}}}}}. /** * * @CreateTime 2017 년 3 월 17 일 오전 11:23:09 AM * @description 추상 클래스 정의 - 크롤러 클래스 */공개 초록 클래스 크롤러 {public Abstract void crawl ();}둘째, 두 개의 인터페이스를 정의하십시오. 하나는 Baseection 기본 인터페이스입니다. 다른 하나는 SpecialAction Special Interface입니다
/** * * @CreateTime 2017 년 3 월 17 일 오전 11:03:42 AM * @description 기본 동작이라는 인터페이스를 정의합니다 */public interface baseaction {public string name = ""; public void eat (); public void sleep ();} /*** @CreateTime 2017 년 3 월 17 일 오전 11:24:56 AM* @description 특수 행동을 구현하기위한 인터페이스를 정의하십시오*/public void specialAction {public void study ();}그런 다음 기본 클래스 사람을 정의하고 Mummals 클래스를 물려 받고 Baseection Interface 및 SpecialAction 인터페이스를 구현하십시오.
/** * @CreateTime 2017 년 3 월 17 일 오전 11시 25 분 17 일 * @Description- 인간, 상속 포유류 및 특수 인터페이스 구현 */공공 계급 사람들은 포유 동물 확장을 확장합니다. 자동 생성 된 메서드 스터브} @override public void sleep () {// todo 자동 생성 메소드 스터브} @override public void nurse () {// todo 자동 생성 메소드 스텁}}}서브 클래스는 여러 인터페이스를 구현할 수 있음을 알 수 있습니다.
마지막으로, 기본 클래스 사람들이 Mummals 클래스와 크롤러 수업을 동시에 상속 받게하십시오.
/** * @CreateTime 2017 년 3 월 17 일 오전 11:25:48 AM * @description 공통 계급 정의 - 인간, 상속 포유류 및 특수 인터페이스 구현 */공공 계급 사람들은 포유류를 확장합니다 {@override public void nurse () {// auto -generated method}}요약
위의 내용은 Java Abstract 클래스 및 인터페이스에 대한 개인적인 이해를 간략하게 논의하는이 기사의 모든 내용입니다. 모든 사람에게 도움이되기를 바랍니다. 관심있는 친구들은이 사이트를 계속 참조 할 수 있습니다.
봄에 상속 및 추상 콩 코드의 예
최대 절전 모드의 핵심 아이디어와 인터페이스 소개
Java의 인터페이스 및 사용 방법의 예
단점이 있으면 메시지를 남겨 두십시오. 이 사이트를 지원해 주신 친구들에게 감사드립니다!