Java의 OOP 개념: 예를 통한 기본 사항

OOPS란 무엇인가요?

객체 지향 프로그래밍 시스템(OOP) 추상화, 캡슐화, 상속 및 다형성의 원칙에 따라 작동하는 프로그래밍 개념입니다. 이를 통해 사용자는 원하는 개체를 만들고 해당 개체를 처리하는 메서드를 만들 수 있습니다. OOP의 기본 개념은 객체를 생성하고 프로그램 전체에서 재사용하며 이러한 객체를 조작하여 결과를 얻는 것입니다.

OOP는 "객체 지향 프로그래밍"을 의미하며 다음과 같은 현대 프로그래밍 언어에서 널리 알려져 널리 사용되는 개념입니다. 자바.

예제가 포함된 Java의 OOP 개념

더 폴로wing Java의 일반적인 OOP 개념은 다음과 같습니다.

1) 수업

수업 유사한 엔터티의 그룹인 OOP의 기본 개념 중 하나입니다. 이는 논리적 구성요소일 뿐이며 물리적 개체는 아닙니다. 예를 들어 OOP 개념 중 하나를 이해해 보겠습니다. "Expensive Cars"라는 클래스가 있는 경우 Mercedes, BMW, Toyota 등과 같은 객체가 있을 수 있습니다. 속성(데이터)은 이러한 자동차의 가격이나 속도일 수 있습니다. 이러한 자동차를 사용하여 수행할 수 있는 방법은 운전, 후진, 제동 등입니다.

2) 객체

객체는 클래스의 인스턴스로 정의될 수 있으며 프로그램에는 클래스의 인스턴스가 여러 개 있을 수 있습니다. 객체는 데이터와 데이터에서 작동하는 함수를 모두 포함하는 Java OOP 개념 중 하나입니다. 예: 의자, 자전거, 마커, 펜, 테이블, 자동차 등

3) 상속

계승 하나의 객체가 상위 객체의 속성과 동작을 획득하는 OOP의 기본 개념 중 하나입니다. 두 클래스 사이에 부모-자식 관계를 생성합니다. 이는 모든 소프트웨어의 구성 및 구조를 위한 강력하고 자연스러운 메커니즘을 제공합니다.

4) 다형성

다형성 변수, 개체 또는 함수가 여러 형식을 취하는 기능인 Java의 OOP 개념 중 하나를 나타냅니다. 예를 들어, 영어에서는 동사 운영 함께 사용하면 의미가 달라집니다 노트북, 도보 경주사업. 여기서 우리는 다음의 의미를 이해합니다. 운영 그와 함께 사용되는 다른 단어를 기반으로 합니다. 다형성에도 동일하게 적용됩니다.

5) 추상화

추출 Java의 OOP 개념 중 하나이며 배경을 포함하지 않고 필수 기능을 표현하는 행위입니다.tails. 특정 애플리케이션에 적합한 새로운 데이터 유형을 생성하는 기술입니다. OOP 개념 중 하나를 예를 들어 이해해 보겠습니다. 자동차를 운전하는 동안 내부 작동에 대해 걱정할 필요가 없습니다. 여기서는 스티어링 휠, 기어, 액셀러레이터 등과 같은 부품에 대해서만 걱정하면 됩니다.

6) 캡슐화

캡슐화 데이터와 코드를 래핑하는 최고의 Java OOP 개념 중 하나입니다. 이 OOP 개념에서 클래스의 변수는 항상 다른 클래스로부터 숨겨집니다. 현재 클래스의 메서드를 통해서만 액세스할 수 있습니다. 예를 들어, 학교에서 학생은 수업 없이는 존재할 수 없습니다.

7) 협회

연관(Association)은 두 개체 사이의 관계입니다. 객체 간의 다양성을 정의하는 Java의 OOP 개념 중 하나입니다. 이 OOP 개념에서는 모든 개체가 별도의 수명 주기를 가지며 소유자가 없습니다. 예를 들어, 많은 학생이 한 명의 교사와 연결될 수 있고 한 학생이 여러 교사와 연결될 수도 있습니다.

8) 집계

이 기술에서는 모든 객체가 별도의 수명 주기를 갖습니다. 그러나 하위 개체가 다른 상위 개체에 속할 수 없는 소유권이 있습니다. 예를 들어 수업/객체 부서와 교사를 생각해 보세요. 여기서 한 명의 교사가 여러 부서에 속할 수는 없지만 부서를 삭제하더라도 교사 개체는 절대 삭제되지 않습니다.

9) 구성

컴포지션은 집계의 특수한 형태입니다. 죽음의 관계라고도 불린다. 하위 개체에는 수명 주기가 없으므로 상위 개체가 삭제되면 모든 하위 개체도 자동으로 삭제됩니다. 이를 위해 집과 방의 예를 들어보겠습니다. 모든 집에는 여러 개의 방이 있을 수 있습니다. 한 방은 두 개의 다른 집의 일부가 될 수 없습니다. 따라서 삭제하면 집방도 삭제됩니다.

OOP(객체 지향 프로그래밍 시스템)의 장점:

  • Java의 OOP 개념은 이해하기 쉽고 프로그램에 대한 명확한 모듈식 구조를 제공합니다.
  • 객체 지향 프로그램용으로 생성된 객체는 다른 프로그램에서 재사용할 수 있습니다. 따라서 상당한 개발 비용이 절약됩니다.
  • 큰 프로그램은 작성하기 어렵지만, 개발팀과 디자인팀이 OOPS 개념을 따른다면 결함을 최소화하면서 더 나은 디자인을 할 수 있습니다.
  • 모든 객체가 독립적으로 존재하기 때문에 프로그램 모듈성이 향상됩니다.

예제를 통해 OOPS와 다른 프로그래밍 스타일 비교

Java OOP 개념이 다른 프로그래밍 접근 방식과 어떻게 다른지 예를 들어 이해해 보겠습니다.

프로그래밍 언어 크게 3가지 유형으로 분류할 수 있습니다

  1. 구조화되지 않은 프로그래밍 언어: 순차적 제어 흐름을 갖는 모든 프로그래밍 언어 중 가장 원시적입니다. 코드는 프로그램 전체에서 반복됩니다.
  2. 구조적 프로그래밍 언어: 비순차적인 제어 흐름이 있습니다. 함수를 사용하면 코드를 재사용할 수 있습니다.
  3. 객체 지향 프로그래밍 언어: 데이터와 액션을 함께 결합합니다.

여기를 눌러 더 많은 정보를 찾으세요. 비디오에 접근할 수 없는 경우

예를 들어 이 3가지 유형을 이해해 봅시다.

다음과 같은 기능을 갖춘 뱅킹 소프트웨어를 만들고 싶다고 가정해 보겠습니다.

  1. 입금
  2. 출금
  3. 잔액 표시

구조화되지 않은 프로그래밍 언어

모든 프로그래밍 언어 중 가장 초기에는 구조화되지 않은 프로그래밍 언어가 있었습니다. 구조화되지 않은 프로그래밍 언어로 된 매우 기본적인 은행 애플리케이션 코드에는 계좌 번호와 계좌 잔고에 대한 두 개의 변수가 있습니다.

int account_number=20;
int account_balance=100;

100달러가 입금되었다고 가정해보자.

account_balance=account_balance+100

다음으로 계정 잔액을 표시해야 합니다.

printf(“Account Number=%d,account_number)
printf(“Account Balance=%d,account_balance)

이제 50달러의 금액이 인출되었습니다.

account_balance=account_balance-50

이번에도 계정 잔액을 표시해야 합니다.

printf(“Account Number=%d,account_number)
printf(“Account Balance=%d,account_balance)

구조화되지 않은 프로그래밍

추가 입금 또는 출금 작업을 위해 동일한 라인을 계속해서 반복하는 코드를 작성하게 됩니다.

구조적 프로그래밍

구조적 프로그래밍이 등장하면서 코드에서 반복되는 줄이 함수나 메소드와 같은 구조에 추가되었습니다. 필요할 때마다 함수에 대한 간단한 호출이 이루어집니다.

구조적 프로그래밍

객체 지향 프로그래밍

우리 프로그램에서는 데이터를 다루거나 데이터에 대한 특정 작업을 수행합니다.

실제로 데이터를 갖고 해당 데이터에 대해 특정 작업을 수행하는 것은 모든 소프트웨어 프로그램의 매우 기본적인 특성입니다.

소프트웨어 프로그래밍 전문가들은 데이터와 운영의 결합을 생각했습니다. 그래서 흔히 OOPS라고 불리는 객체지향 프로그래밍이 탄생하게 되었습니다.

객체 지향 프로그래밍 언어의 동일한 코드에는 동일한 데이터가 있으며 해당 데이터에 대해 일부 작업이 수행됩니다.

Class Account{
    int account_number;
    int account_balance;
public void showdata(){
    system.out.println(“Account Number”+account_number)
    System.out.println(“Account Balance”+ account_balance)
}
}

객체 지향 프로그래밍

데이터와 액션을 결합함으로써 구조적 프로그래밍에 비해 많은 이점을 얻을 수 있습니다. viz,

  • 추출
  • 캡슐화
  • 계승
  • 다형성

그들은 더 큰 de에서 논의됩니다tails 성공적인 튜토리얼에서