>Java >java지도 시간 >Java의 객체 지향 프로그래밍

Java의 객체 지향 프로그래밍

WBOY
WBOY원래의
2024-08-30 16:20:181152검색

Java는 James Gosling이 디자인한 객체 지향 프로그래밍입니다. 클래스 기반이며 동시 프로그래밍 기능을 갖춘 범용 프로그래밍 언어입니다. 멀티스레딩 기능도 있습니다. 이는 정적이고 안전하며 강력한 형식의 프로그래밍 언어입니다. 이는 Oracle Corporation(당시 Sun Corporation)에서 개발하고 유지 관리합니다. 파일 확장자 이름은 .java 또는 .class입니다. 1995년에 처음 등장했습니다. 한 번 작성하면 어디서나 실행할 수 있는 애플리케이션을 개발하기 위한 것입니다. 클라이언트-서버 종류의 응용 프로그램에 가장 많이 사용됩니다. GNU General Public License 및 Java Community Process에 따라 라이센스가 부여됩니다. 최신 버전의 Java는 2018년 3월에 출시된 10입니다.

Java의 객체지향 프로그래밍 설명

Java 프로그래밍 언어는 클래스, 객체, 상속, 다형성, 캡슐화 및 추상화와 같은 다양한 개념을 갖는 객체 지향 프로그래밍 방법론 또는 패러다임을 기반으로 하며 다음과 같이 설명할 수 있습니다.

광고 이 카테고리에서 인기 있는 강좌 프로그래밍 언어 - 전문 분야 | 54 코스 시리즈 | 4가지 모의고사
  • 클래스: 실제 기능이 있는 필드나 속성 및 메서드를 정의하는 객체의 청사진입니다. 이러한 속성과 메소드를 멤버라고 하며, 멤버 선언 시 정의된 액세스 한정자를 기반으로 이러한 멤버에 액세스할 수 있습니다.
  • 객체: 객체는 클래스의 인스턴스라고 하며, 클래스 생성자를 호출하여 선언하고 인스턴스화할 수 있습니다. 객체에는 상태가 있고 상태에는 클래스 속성이 보유하는 데이터가 포함됩니다.
  • 상속: 세 번째 단계 프로세스입니다. 기존 데이터에서 가치 있는 정보를 얻기 위해 불필요한 정보를 줄이고 이를 중요한 정보 집합으로 변환하여 데이터를 검사, 정리, 변환, 시각화합니다.
  • 다형성: 다형성은 다양한 가능한 방식으로 단일 작업을 수행하는 프로세스로 정의됩니다. Java에서는 메소드 오버로딩과 메소드 오버라이딩이라는 두 가지 방법으로 다형성을 구현할 수 있습니다. 메소드 오버로딩은 컴파일 시간 다형성이라고도 하며, 메소드 오버라이딩은 런타임 다형성이라고도 합니다.
  • 캡슐화: 캡슐화는 Java에서 클래스로 정의된 단일 단위나 모듈에 코드를 숨기거나 바인딩하거나 래핑하는 것을 의미합니다. 객체지향 프로그래밍의 캡슐화 기능은 Java의 클래스를 사용하여 구현할 수 있습니다. 일반 기존 Java 객체 또는 Java Bean은 클래스의 멤버가 비공개(액세스 한정자)이므로 캡슐화되어 클래스의 getter 및 setters 메서드를 통해서만 액세스할 수 있다고 합니다.
  • 추상화: 객체 지향 기능 추상화는 필요한 인터페이스만 노출하거나 구현 클래스 메서드를 호출하기 위해 메서드에 액세스하여 기능 구현을 숨기는 프로세스로 정의할 수 있습니다. 인터페이스와 추상 클래스를 사용하여 Java 프로그래밍 언어로 추상화를 구현할 수 있습니다.

Java 객체지향 프로그래밍의 장점

  1. 추가 비용 없이 다양한 유형의 애플리케이션을 개발하고 유지 관리하는 데 도움이 됩니다.
  2. 설계에 작은 변경을 가하여 변경 사항을 쉽게 구현하는 데 도움이 되므로 고객이 요구하는 더 큰 변경 사항에 애플리케이션이 더 잘 적응할 수 있습니다.
  3. 코드의 모듈성은 버그를 쉽게 수정하여 문제 해결 과정과 유지 관리를 쉽게 해줍니다.
  4. 코드 재사용이 메인입니다.
  5. 잦은 기능 변경에 대해 더 큰 유연성을 제공합니다.

 Java의 객체 지향 프로그래밍 애플리케이션

Java에는 다양한 객체 지향 프로그래밍 응용 프로그램이 있으며 아래는 이 개념 영역의 예입니다.

1. 수업

클래스는 다음과 같이 정의할 수 있습니다.

public class Employee {
private int employeeId;
private String employeeName;
public int getSalary(int basicPay, int da, int hra) {
int salary = basicPay + da + hra;
return salary;
}
}

위 클래스에서 EmployeeId, 직원 이름 및 getSalary() 메소드는 클래스의 멤버이고, EmployeeId 및 직원 이름은 속성 또는 필드이고 getSalary()는 실제 작업이 수행되는 메소드입니다.

2. 객체

위 Employee 클래스에 대해서는 아래와 같이 객체를 생성할 수 있습니다.

Employee employeeObject = new Employee();

위 줄에서는 new 키워드를 사용하여 객체가 생성되고 Employee()는 객체를 생성하는 데 사용되는 빈 인수 생성자입니다. 직원은 Employee 클래스에 대한 참조에 반대합니다.

3. 다형성

이는 메서드 재정의 및 오버로딩을 통해 달성할 수 있습니다.

public int getSalary(int basicPay, int da, int hra) {
int salary = basicPay + da + hra;
return salary;
}

위 메서드에서 아래와 같이 괄호 안에 추가하면 getSalary() 메서드에 또 다른 인수를 추가할 수 있습니다.

public int getSalary(int basicPay, int da, int hra, int bonus) {
int salary = basicPay + da + hra + bonus;
return salary;
}

4. Encapsulation

This can be achieved as below:

public class Employee {
private int employeeId;
private String employeeName;
public int getEmployeeId() {
return employeeId;
}
public void setEmployeeId(int employeeId) {
this.employeeId = employeeId;
}
public String getEmployeeName() {
return employeeName;
}
public void setEmployeeName(String employeeName) {
this.employeeName = employeeName;
}
}

The above class Employee has two fields (private) and four methods (getters and setters) which will be used to access the above two private attributes.

5. Abstraction

This is the process of hiding the implementation functionality.

In the above method getSalary(), the internal function of the addition of all the components of a salary is hidden inside the method, and only this can be accessed by using the method name by passing the values as method arguments. In this way, the total salary will be obtained by passing the individual salary components to the method.

Conclusion

There are different and multiples areas of applications in the field of the Web world, Standalone, and many other areas for the Object-Oriented Programming in Java concept. The average utilization or application of object-oriented programming in Java has been in the top 5 positions for most of the enterprise applications and has been in almost every enterprise as of now is the most sought-after technology. There are huge numbers of tools available, such as IDEs, to develop applications using object-oriented programming in Java. Many companies are using Java-based applications for their requirements because of the ease of development and maintenance. The standalone apps developed in Java are mostly being used by many companies for their in-house tools They are developed based on Java Swing GUI toolkit and are now called Java FX in its recent version. The recent version of Java 8 provides great functional programming features and parallel processing capabilities with its Stream API.

Recommended Articles:

This has been a guide to Object-Oriented Programming in Java. Here we have discussed the Different concepts and the applications of Object-Oriented Programming in Java. You may also look at the following article to learn more –

  1. Oops, Java Interview Questions
  2. Java Testing Interview Questions
  3. Object in Java
  4. Overloading and Overriding in C#

위 내용은 Java의 객체 지향 프로그래밍의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.