산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> java

자바 클래스와 객체

자바 클래스 및 개체

이 튜토리얼에서는 예제를 통해 Java의 클래스와 객체 개념에 대해 배울 것입니다.

자바는 객체 지향 프로그래밍 언어입니다. 객체 지향 접근 방식의 핵심 개념은 복잡한 문제를 더 작은 객체로 나누는 것입니다.

개체는 상태가 있는 모든 항목입니다. 및 행동 . 예를 들어, 자전거 개체입니다. 가지고 있습니다

객체에 대해 배우기 전에 먼저 Java의 클래스에 대해 알아보겠습니다.

<시간>

자바 클래스

클래스는 객체의 청사진입니다. 객체를 생성하기 전에 먼저 클래스를 정의해야 합니다.

우리는 클래스를 집의 스케치(프로토타입)로 생각할 수 있습니다. 여기에는 바닥, 문, 창문 등에 대한 모든 세부 정보가 포함되어 있습니다. 이러한 설명을 기반으로 집을 짓습니다. 집이 오브제입니다.

동일한 설명으로 많은 집을 만들 수 있으므로 클래스에서 많은 개체를 만들 수 있습니다.

<시간>

자바에서 클래스 만들기

class 키워드를 사용하여 Java에서 클래스를 생성할 수 있습니다. 예를 들어,

class ClassName {
  // fields
  // methods
}

여기, 필드 (변수) 및 메서드 를 나타냅니다. 및 행동 개체의 각각.

자전거의 경우 객체, 우리는 클래스를 다음과 같이 생성할 수 있습니다.

class Bicycle {

  // state or field
  private int gear = 5;

  // behavior or method
  public void braking() {
    System.out.println("Working of Braking");
  }
}

위의 예에서 Bicycle이라는 클래스를 만들었습니다. . 여기에는 gear라는 필드가 포함됩니다. 및 braking()이라는 메서드 .

여기, 자전거 프로토타입이다. 이제 프로토타입을 사용하여 자전거를 원하는 수만큼 만들 수 있습니다. 그리고 모든 자전거는 프로토타입의 필드와 방법을 공유합니다.

참고 :private 키워드를 사용했습니다. 및 public . 이를 액세스 수정자라고 합니다. 자세한 내용은 Java 액세스 수정자를 방문하십시오.

<시간>

자바 개체

객체를 클래스의 인스턴스라고 합니다. 예를 들어 자전거라고 가정해 보겠습니다. 클래스인 경우 MountainBicycle , 스포츠바이크 , 투어링바이크 , 등은 클래스의 객체로 간주될 수 있습니다.

자바에서 개체 만들기

다음은 클래스의 개체를 만드는 방법입니다.

className object = new className();

// for Bicycle class
Bicycle sportsBicycle = new Bicycle();

Bicycle touringBicycle = new Bicycle();

new를 사용했습니다. 객체를 생성하기 위해 클래스의 생성자와 함께 키워드. 생성자는 메서드와 유사하며 클래스와 이름이 같습니다. 예:Bicycle() 자전거의 생성자입니다. 수업. 자세한 내용은 Java 생성자를 방문하십시오.

여기, sportsBicycletouringBicycle 객체의 이름입니다. 이를 사용하여 클래스의 필드와 메서드에 액세스할 수 있습니다.

보시다시피 클래스의 두 개체를 만들었습니다. Java에서 단일 클래스의 여러 개체를 만들 수 있습니다.

참고 :클래스의 필드와 메소드를 클래스의 멤버라고도 합니다.

<시간>

클래스 구성원 액세스

.과 함께 개체 이름을 사용할 수 있습니다. 클래스의 멤버에 액세스하는 연산자입니다. 예를 들어,

class Bicycle {

  // field of class
  int gear = 5;

  // method of class
  void braking() {
    ...
  }
}

// create object
Bicycle sportsBicycle = new Bicycle();

// access field and method
sportsBicycle.gear;
sportsBicycle.braking();

위의 예에서 Bicycle이라는 클래스를 만들었습니다. . 여기에는 gear라는 필드가 포함됩니다. 및 braking()이라는 메서드 . 진술을 주목하십시오.

Bicycle sportsBicycle = new Bicycle();

여기에서 Bicycle 객체를 만들었습니다. 이름이 sportsBicycle . 그런 다음 개체를 사용하여 클래스의 필드와 메서드에 액세스합니다.

방법이라는 단어를 언급했습니다. 꽤 몇 번. 다음 장에서 Java 메소드에 대해 자세히 배울 것입니다.

이제 클래스와 객체가 무엇인지 이해했습니다. 완전히 작동하는 예를 살펴보겠습니다.

<시간>

예:Java 클래스 및 개체

class Lamp {
  
  // stores the value for light
  // true if light is on
  // false if light is off
  boolean isOn;

  // method to turn on the light
  void turnOn() {
    isOn = true;
    System.out.println("Light on? " + isOn);

  }

  // method to turnoff the light
  void turnOff() {
    isOn = false;
    System.out.println("Light on? " + isOn);
  }
}

class Main {
  public static void main(String[] args) {

    // create objects led and halogen
    Lamp led = new Lamp();
    Lamp halogen = new Lamp();

    // turn on the light by
    // calling method turnOn()
    led.turnOn();

    // turn off the light by
    // calling method turnOff()
    halogen.turnOff();
  }
}

출력 :

Light on? true
Light on? false

위의 프로그램에서 Lamp라는 클래스를 만들었습니다. . 여기에는 isOn 변수가 포함되어 있습니다. 및 두 가지 방법:turnOn()turnOff() .

메인 내부 클래스에서 led라는 두 개의 객체를 생성했습니다. 및 할로겐 램프 수업. 그런 다음 개체를 사용하여 클래스의 메서드를 호출했습니다.

변수 isOn 클래스 내부에 정의된 변수를 인스턴스 변수라고도 합니다. 클래스의 객체를 생성할 때 클래스의 인스턴스라고 하기 때문입니다. 그리고 각 인스턴스에는 변수의 고유한 복사본이 있습니다.

즉, led할로겐 개체는 isOn의 자체 복사본을 갖습니다. 변수.

<시간>

예:동일한 클래스 내에서 객체 생성

이전 예제에서는 다른 클래스 내부에 개체를 만들고 해당 클래스의 멤버에 액세스했습니다.

그러나 동일한 클래스 내에서 객체를 생성할 수도 있습니다.

class Lamp {
  
  // stores the value for light
  // true if light is on
  // false if light is off
  boolean isOn;

  // method to turn on the light
  void turnOn() {
    isOn = true;
    System.out.println("Light on? " + isOn);

  }

  public static void main(String[] args) {
    
    // create an object of Lamp
    Lamp led = new Lamp();

    // access method using object
    led.turnOn();
  }
}

출력

Light on? true

여기서는 main() 내부에 객체를 생성합니다. 같은 클래스의 메서드입니다.


java

  1. C++ 클래스 및 개체
  2. 자바 변수와 리터럴
  3. 자바 최종 키워드
  4. 자바 instanceof 연산자
  5. 자바 추상 ​​클래스와 추상 메소드
  6. Java 중첩 및 내부 클래스
  7. 자바 중첩 정적 클래스
  8. 자바 익명 클래스
  9. 자바 싱글톤 클래스
  10. 자바 리플렉션