자바 의 추상 적 인 방법 과 추상 적 인 사례 에 대한 상세 한 설명

본 논문 의 사례 는 자바 의 추상 적 인 방법 과 추상 류 를 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
눈여겨보다
추상 적 인 방법 은 방법 만 서명 하고 실현 할 방법 이 없 는 방법 이다.
추상 적 인 방법 과 추상 적 인 유형 은 반드시 abstract 장식 부 를 사용 하여 정의 해 야 한다.추상 적 인 방법 이 있 는 유형 은 추상 적 인 유형 으로 만 정의 되 고 추상 적 인 유형 에는 추상 적 인 방법 이 없 을 수 있다.
추상 류 와 추상 방법의 규칙:
  • 추상 류 는 abstract 수식 부 를 사용 하여 수식 해 야 하고 추상 적 인 방법 은 abstract 수식 부 를 사용 하여 수식 해 야 하 며 추상 적 인 방법 은 방법 체 가 있어 서 는 안 된다.
  • 추상 류 는 반드시 예화 되 지 않 는 다.추상 류 에 추상 적 인 방법 이 포함 되 어 있 지 않 더 라 도 이 추상 류 는 인 스 턴 스 를 만 들 수 없다.4567918)
  • 추상 류 는 구성원 변수,방법(일반 방법 과 추상 방법),구조 기,초기 화 블록,내부 류(인터페이스,매 거 진)5 가지 성분 을 포함 할 수 있다.추상 류 의 구조 기 는 인 스 턴 스 를 만 드 는 데 사용 할 수 없고 주로 하위 클래스 에 의 해 호출 됩 니 다.
  • 추상 적 인 방법 을 포함 하 는 유형(추상 적 인 방법 을 직접 정의 하 는 것 을 포함한다.또는 추상 적 인 부 류 를 계 승 했 지만 부 류 를 포함 하 는 추상 적 인 방법 을 완전히 실현 하지 못 했다.또는 하나의 인 터 페 이 스 를 실 현 했 지만 인터페이스 에 포 함 된 추상 적 인 방법 세 가지 상황 을 완전히 실현 하지 못 했다)는 추상 류 로 정의 할 수 밖 에 없다.4567918)
    코드
    1 추상 류
    
    public abstract class Shape
    {
      {
       System.out.println("  Shape     ...");
      }
      private String color;
      //              
      public abstract double calPerimeter();
      //              
      public abstract String getType();
      //   Shape    ,           Shape  ,
      //          
      public Shape(){}
      public Shape(String color)
      {
       System.out.println("  Shape    ...");
       this.color = color;
      }
      //   color setter getter  
      public void setColor(String color)
      {
       this.color = color;
      }
      public String getColor()
      {
       return this.color;
      }
    }
    
    
    2 트라이앵글 류
    
    public class Triangle extends Shape
    {
      //         
      private double a;
      private double b;
      private double c;
      public Triangle(String color , double a
       , double b , double c)
      {
       super(color);
       this.setSides(a , b , c);
      }
      public void setSides(double a , double b , double c)
      {
       if (a >= b + c || b >= a + c || c >= a + b)
       {
         System.out.println("              ");
         return;
       }
       this.a = a;
       this.b = b;
       this.c = c;
      }
      //   Shape            
      public double calPerimeter()
      {
       return a + b + c;
      }
      //   Shape            
      public String getType()
      {
       return "   ";
      }
    }
    
    
    3 Circle 클래스
    
    public class Circle extends Shape
    {
      private double radius;
      public Circle(String color , double radius)
      {
       super(color);
       this.radius = radius;
      }
      public void setRadius(double radius)
      {
       this.radius = radius;
      }
      //   Shape            
      public double calPerimeter()
      {
       return 2 * Math.PI * radius;
      }
      //   Shape            
      public String getType()
      {
       return getColor() + "  ";
      }
      public static void main(String[] args)
      {
       Shape s1 = new Triangle("  " , 3 , 4, 5);
       Shape s2 = new Circle("  " , 3);
       System.out.println(s1.getType());
       System.out.println(s1.calPerimeter());
       System.out.println(s2.getType());
       System.out.println(s2.calPerimeter());
      }
    }
    
    
    삼 운행
    Shape 초기 화 블록 실행...
    Shape 를 실행 하 는 구조 기...
    Shape 초기 화 블록 실행...
    Shape 를 실행 하 는 구조 기...
    삼각형
    12.0
    노란색 원형
    18.84955592153876
    주의
    abstract 는 구성원 변 수 를 수식 하 는 데 사용 할 수 없고 국부 변 수 를 수식 하 는 데 사용 할 수 없다.즉,추상 변수 가 없고 추상 적 인 구성원 변수 가 없다 는 등 표현 이다.abstract 도 구조 기 를 수식 하 는 데 사용 할 수 없고 추상 구조 기 가 없 으 며 추상 류 에서 정 의 된 구조 기 는 일반 구조 기 일 수 밖 에 없다.
    static 와 abstract 는 어떤 방법 을 동시에 수식 할 수 없 지만 내부 클래스 를 동시에 수식 할 수 있다.
    abstract 키 워드 를 수식 하 는 방법 은 하위 클래스 에 의 해 재 작성 되 어야 의미 가 있 습 니 다.그렇지 않 으 면 이 방법 은 영원히 방법론 이 없 기 때문에 abstract 방법 은 private 접근 권한 으로 정의 할 수 없습니다.즉,private 와 abstract 는 동시에 수식 할 수 없습니다.
    더 많은 자바 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
    본 고 에서 말 한 것 이 여러분 의 자바 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
  • 좋은 웹페이지 즐겨찾기