추상화는 동일한 클래스의 공통적인 특징을 요약하여 클래스로 구성하는 과정입니다. 멤버 변수와 멤버 함수에만 관심이 있고 구체적인 구현 세부 사항은 고려되지 않습니다. 캡슐화(Encapsulation)란 데이터와 연산 방식을 함수/클래스에 캡슐화한 후 이를 설치하는 것, 즉 데이터와 연산을 위한 방식을 결합하고, 외부 세계에 접근할 수 있도록 정의된 인터페이스를 제공하는 것입니다.
Java의 네 가지 기본 특성은 추상화, 캡슐화, 다형성 및 상속입니다. 오늘은 추상화와 캡슐화가 무엇인지 알아보겠습니다.
Abstraction
Abstraction: 동일한 클래스의 공통적인 특징을 요약하여 클래스로 구성하는 과정입니다. 데이터 추상화 및 행동 추상화가 포함됩니다. 데이터 추상화는 클래스의 멤버 변수가 되고, 행동 추상화는 클래스의 멤버 함수가 됩니다. 추상화는 멤버 변수와 멤버 함수에만 관심을 가지며 특정 구현 세부 사항과는 아무 관련이 없습니다.
다음은 인간과 관련된 데이터와 다양한 활동을 나타내는 Person.class입니다. 속성과 동작 중 일부만 나열되어 있습니다.
public class Person{ // 年龄(数据抽象) public int age; // 名字(数据抽象) public String name; public Person(){ } public Person(int age,String name){ this.age = age; this.name = name; } // 吃东西(行为抽象) public void eat(){ System.out.println("I am eating"); } // 走路(行为抽象) public void walk(){ System.out.println("I am walking"); } }
사람 개체 만들기:
Person person = new Person(18,"张三");
위 코드는 간단한 추상화를 표현하고 사람들의 일반적인 속성과 일반적인 행동을 추상화하는 데만 사용됩니다.
Encapsulation
Encapsulation은 실제로 "설치"와 "인클로저"로 이해될 수 있습니다. 이는 함수/클래스에 데이터와 작업 방법을 캡슐화한 다음 설치하는 것을 의미합니다. 즉, 데이터와 데이터를 운용하기 위한 방법이 하나로 묶여 있고, 외부 세계에 접근할 수 있도록 정의된 인터페이스가 제공됩니다. 객체지향의 본질은 현실 세계를 일련의 완전히 자율적이고 닫힌 객체로 묘사하는 것입니다. 내부 구현이 아무리 복잡하더라도 사용자는 이를 완전히 무시하고 사용 방법만 알면 된다는 것을 이해할 수 있습니다.
작은 예: 다음은 학생 클래스입니다. 학습 방법은 실제로 일종의 캡슐화입니다. 외부 세계에서 학생들이 학습해야 하는 경우에는 Study() 메소드를 직접 호출하면 됩니다. 학습 방법을 구현합니다.
아아아아위 내용은 Java의 추상화 및 캡슐화 란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!