기본 자바 지식.

기본 자바 지식.

2022-10-19 last update

5 minutes reading
Java의 왕조차도 OOP가 실제로 무엇을 의미하는지 이해하기 위해 읽어야 했습니다.

이름에서 알 수 있듯이 > 객체 지향 프로그래밍
또는 OOP는 프로그래밍에서 객체를 사용하는 언어를 말하며, 객체를 기본 소스로 사용하여 코드에서 발생할 일을 구현합니다. 개체는 뷰어 또는 사용자가 보고 할당된 작업을 수행합니다. 객체 지향 프로그래밍은 프로그래밍에서 상속, 은닉, 다형성 등과 같은 실제 엔티티를 구현하는 것을 목표로 합니다. OOP의 주요 목표는 데이터와 데이터에서 작동하는 기능을 함께 묶어 코드의 다른 부분이 해당 기능을 제외하고 이 데이터에 액세스할 수 없도록 하는 것입니다. Java에서 메소드를 선언하는 방법을 이해하고 Java에 있는 메소드 유형을 완전히 이해하고 있다고 생각합니다.

예를 들어, 개는 꼬리를 흔드는 것, 짖는 것, 먹기 등과 같은 행동뿐만 아니라 색깔, 이름, 품종 등과 같은 상태를 가지고 있기 때문에 개체입니다.

객체 지향 프로그래밍의 개념

  • 클래스: 개체 컬렉션을 클래스라고 합니다. 논리적 개체입니다. 클래스는 개별 개체를 생성할 수 있는 청사진으로도 정의할 수 있습니다. "클래스는 공간을 차지하지 않습니다."

  • public class Practice {
    
    }
    


  • 상속: 한 개체가 상위 개체의 모든 속성과 동작을 획득하는 경우 이를 상속이라고 합니다. 코드 재사용성을 제공합니다. 런타임 다형성을 달성하는 데 사용됩니다. 예를 들어 나이지리아는 상위 개체입니다. Lagos, Imo 및 Ogun 상태는 모두 상위 개체에서 상속됩니다.
  • 다형성: 한 작업이 다른 방식으로 수행되는 경우 이를 다형성이라고 합니다. Java에서는 메소드 오버로딩과 메소드 오버라이드를 사용하여 다형성을 구현합니다.

  • public class Animal {
    
        private String name;
    
        private String color;
    
        private int age;
    
        public Animal(String name, String color, int age){
           this.name = name;
           this.color = color;
           this.age = age;
        }
    
        public Animal(String name, int age){
           this.name = name;
           this.age = age;
        }
    
    



  • 추상화: 내부 세부 정보를 숨기고 기능을 표시하는 것을 추상화라고 합니다. Java에서는 추상화를 달성하기 위해 추상 클래스와 인터페이스를 사용합니다.

  • public abstract class Animal {
    
       private Heart heart;
    
       private Lungs lungs;
    
       private Kidney kidney;
    
    


  • 캡슐화: 코드와 데이터를 함께 단일 단위로 바인딩(또는 래핑)하는 것을 캡슐화라고 합니다. 예를 들어 캡슐은 다른 약으로 포장되어 있습니다. 자바 클래스는 캡슐화의 예입니다. 모든 데이터 멤버가 여기에서 비공개이기 때문에 Java Bean은 완전히 캡슐화된 클래스입니다.
  • 커플링: 커플링은 다른 클래스의 지식이나 정보 또는 종속성을 나타냅니다. 클래스가 서로를 인식할 때 발생합니다. 클래스에 다른 클래스의 세부 정보가 있으면 강력한 결합이 있습니다. Java에서는 private, protected 및 public 한정자를 사용하여 클래스, 메서드 및 필드의 가시성 수준을 표시합니다. 구체적인 구현이 없기 때문에 약한 결합을 위해 인터페이스를 사용할 수 있습니다.



  • 내 중간 계정도 볼 수 있습니다here

    읽어주셔서 감사하고 뭔가를 배웠기를 바랍니다. 지금 압축!