캡슐화란 무엇입니까 java
객체 지향 프로그래밍 방식에서 캡슐화(영어: Encapsulation)는 추상적인 기능적 인터페이스의 구현 세부 사항을 부분적으로 패키징하고 숨기는 방법을 말합니다.
캡슐화는 외부 클래스에서 정의한 코드가 클래스의 코드와 데이터에 무작위로 액세스하는 것을 방지하는 보호 장벽으로 생각할 수 있습니다.
이 클래스의 코드와 데이터에 액세스하려면 엄격한 인터페이스 제어를 통과해야 합니다.
캡슐화의 주요 기능은 코드를 호출하는 프로그램 조각을 수정하지 않고도 자체 구현 코드를 수정할 수 있다는 것입니다.
올바른 캡슐화는 프로그램 코드를 더 쉽게 이해하고 유지 관리할 수 있도록 하며 프로그램 코드의 보안도 강화할 수 있습니다. (추천 튜토리얼: java 튜토리얼)
캡슐화의 장점
1. 캡슐화를 잘하면 커플링을 줄일 수 있습니다.
2. 수업 내부 구조는 자유롭게 수정 가능합니다.
3. 멤버 변수를 더욱 정밀하게 제어할 수 있습니다.
4. 정보를 숨기고 세부정보를 구현합니다.
Java 캡슐화는 직설적으로 말하면 몇 가지 일반적인 구현 로직을 상자(클래스)에 넣는 것이며, 입구와 출구는 이 상자에 있습니다. 사용하고 싶으면 이 상자를 입구와 출구에 연결하고 사용하면 됩니다. 사용하지 않으면 그냥 버려도 됩니다. 코드에 아무런 영향을 주지 않습니다. .
프로그래머의 경우 캡슐화를 사용하는 목적은 다음과 같습니다.
1. 게으르고 한 번 열심히 작업하면 나중에 많은 코드를 절약할 수 있어 코드의 재사용성이 향상됩니다.
2 코드를 단순화하고 만듭니다. 더 쉽게 이해하세요
3. 핵심 구현 로직 코드를 숨기고, 외부 로직을 단순화하고, 다른 사람이 수정하는 것을 방지하세요.
4. 일대일, 하나의 기능만 사용하면 됩니다. The last mess is a mess
예:
public class EncapTest{ private String name; private String idNum; private int age; public int getAge(){ return age; } public String getName(){ return name; } public String getIdNum(){ return idNum; } public void setAge( int newAge){ age = newAge; } public void setName(String newName){ name = newName; } public void setIdNum( String newId){ idNum = newId; } }
위의 예에서 공개 메소드는 외부 클래스가 클래스의 멤버 변수에 액세스하는 입구입니다.
일반적으로 이러한 메서드를 getter 및 setter 메서드라고 합니다.
따라서 클래스의 비공개 멤버 변수에 액세스하려는 모든 클래스는 이러한 getter 및 setter 메서드를 거쳐야 합니다.
다음 예제에서는 EncapTest 클래스의 변수에 액세스하는 방법을 보여줍니다.
public class RunEncap{ public static void main(String args[]){ EncapTest encap = new EncapTest(); encap.setName("James"); encap.setAge(20); encap.setIdNum("12343ms"); System.out.print("Name : " + encap.getName()+ " Age : "+ encap.getAge()); } }
위 코드를 컴파일하고 실행하면 결과는 다음과 같습니다.
Name : James Age : 2
위 내용은 캡슐화된 자바란 무엇인가의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!