[contact-form-7 404 "Not Found"]

Fique informado sobre as principais tendências em energias renováveis. Deixe seu e-mail e receba nossos conteúdos.

Sem categoria

객체지향 추상화 예제

내 동료 중 한 명은 추상화가 추상 클래스와 범위로 멤버 변수를 보호하는 일반 클래스를 만드는 것일 뿐이라고 말했습니다. 제어 추상화는 이러한 모든 문을 식별하고 작업 단위로 노출하는 프로세스입니다. 일반적으로 작업을 수행하는 함수를 만들 때 이 기능을 사용합니다. 추상화는 구현을 완전히 숨기거나 일부 구현이 표시됩니까? 추상화는 구현 세부 정보를 숨기는 것에 대한 것입니다. 자바 추상화에서 추상화는 추상 클래스와 인터페이스를 통해 달성된다. 추상화도 숨깁니다, 하지만 위에서 설명한 대로 – 추상화는 복잡성을 숨깁니다. 반면에 캡슐화는 데이터/동작을 함께 캡슐화하고 액세스 권한을 제어합니다. 즉, 캡슐화는 캡슐화하는 구문이 숨깁니다. 우리가 말할 때 두 물질은 액체 우리가 사용 하는 “액체” 우리가 논의 하기로 하는 그 물질의 속성에 추상화로. 그 추상화는 액체에 대한 우리의 이전 경험을 감안할 때 우리가 물질로 할 수있는 일을 알려줍니다. 혼동이 발생하는 경우 최대 개발자가 추상화와 캡슐화 사이에서 혼동되는 개념은 이러한 개발자를 데이터 숨기기와 관련시키려고 할 때입니다.

모든 메서드의 완전한 구현을 제공하지 않고 주어진 추상화의 구조를 선언하는 수퍼 클래스를 정의하려는 상황이 있습니다. 즉, 때로는 모든 하위 클래스에서 공유되는 일반화 양식만 정의하는 수퍼 클래스를 만들어 세부 정보를 채우기 위해 각 하위 클래스에 남겨 둡니다. 따라서 자동차를 예로 들면 자동차의 모든 컨트롤은 추상화입니다. 이를 통해 스티어링, 가속 또는 감속 시스템의 기본 세부 사항을 이해하지 않고 차량을 작동할 수 있습니다. 하스켈과 같은 기능적 언어는 극단적인 코드 재사용을 실용적으로 만드는 추상화의 강력한 힘을 가지고 있습니다. 인터페이스를 사용하여 Java에서 추상화의 한 가지 예를 다시 살펴보겠습니다. 이 예제에서는 응용 프로그램 수명 동안 언제든지 요청 시 실행할 수 있는 다양한 보고서를 만들고 있습니다. 보고서의 소비자로서 클래스는 보고서의 run() 내부를 알 필요가 없으며 이 메서드만 실행해야 하며 보고서가 실행됩니다. 캡슐화는 속성의 “바인딩”이며 추상화의 단일 단위(즉 클래스)에서 속성을 조작하는 작업입니다. 그래서 자동차는 위치와 현재 속도 등을 조작 하는 가속 정지를 가질 것 이다. 추상화는 모든 OOP 원칙을 따르는 개체 지향 프로그래밍 관행과 Java의 핵심 원칙 중 하나이기 때문에 추상화는 자바 언어의 주요 구성 요소 중 하나입니다. 추상화는 세부 정보를 잊어 버리므로 특정 추상화를 사용하는 경우 추상화에 의해 부여되지 않은 기본 물질의 속성에 대해 묻지 않아야합니다.

우유와 물을 가지고 함께 섞는다면, 당신은 당신이 얼마나 많은 우유를 가지고 있는지 묻는 데 어려움을 감습니다. 캡슐화는 원하는 추상화를 실현하는 것입니다.