Latest web development tutorials

루비 클래스와 객체

루비 완전한 객체 지향 프로그래밍 언어이다. 객체 지향 프로그래밍 언어의 기능은 다음과 같습니다 :

  • 데이터 캡슐화
  • 데이터 추상화
  • 다형성
  • 상속

이러한 기능이 될 것이다 객체 지향 루비 논의했다.

객체 지향 프로그래밍, 클래스와 객체가있었습니다. 클래스 생성 개별 개체에 대한 청사진이다. 객체 지향 관점에서, 자전거는 클래스 자전거의 인스턴스입니다.

비히클, 예를 들어,이 차륜 (바퀴)와, HP (마력), 오일 또는 가스 탱크 용량 (연료 또는 연료 탱크의 용량). 이러한 속성은 차량 (차량) 클래스의 데이터 멤버를 형성했다. 다른 차량에서 하나의 차량을 구별 할 수 이러한 특성으로.

자동차도 (과속) 속도 (운전) 운전 등의 일시 정지 (정지)와 같은 특정 기능을 포함 할 수 있습니다. 차량 (자동차) 클래스의 데이터 멤버를 형성하는 이러한 기능한다. 따라서 속성과 기능의 조합으로 클래스를 정의 할 수 있습니다.

다음과 같이 Vehicle 클래스 정의 :

클래스 차량
{
   번호 no_of_wheels
   번호 마력
   문자 type_of_tank
   번호 용량
   기능 과속
   {
   }
   기능 운전
   {
   }
   기능 정지
   {
   }
}

이러한 데이터 멤버 할당 된 다른 값을 제공함으로써, 당신은 클래스 차량의 다른 인스턴스를 만들 수 있습니다. 예를 들어, 세 바퀴, 1000 마력 100 리터 연료 탱크 용량 비행기. 같은 방식으로, 네 개의 바퀴 (200)의 마력 25 리터의 연료 탱크의 용량을 갖는 차.

루비의 클래스를 정의

루비 객체 지향 프로그래밍을 사용하려면, 당신은 루비 객체와 클래스를 만드는 방법을 배울 필요가 있습니다.

루비, 클래스는 항상 클래스의 이름 다음 키워드클래스로시작한다. 클래스 이름의 첫 글자는 대문자로한다.고객클래스 다음과 같습니다 :

클래스 고객
끝

당신은 클래스를 종료 키워드끝을사용할 수 있습니다. 모든클래스의데이터 멤버는 클래스정의와 단부사이 키워드이다.

루비 클래스 변수

루비 변수 네가지 :

  • 지역 변수 : 지역 변수는 메소드에 정의 된 변수입니다.방법 밖에 지역 변수를 사용할 수 없습니다. 다음 장에서는 방법에 대한 자세한 내용을 볼 수 있습니다. 지역 변수는 소문자 또는 _로 시작합니다.
  • 변수의 예 : 특정 인스턴스 또는 객체 메소드에서 인스턴스 변수.이 인스턴스 변수 개체에 개체에서 변경 될 수 있음을 의미한다. 변수 이름 앞에 인스턴스 변수 기호 (@) 놓습니다.
  • 클래스 변수 : 다른 개체에서 클래스 변수.클래스 변수 클래스에 속하고, 클래스의 속성이다. 클래스 변수는 변수 이름 앞에 기호 (@@) 배치합니다.
  • 글로벌 변수 : 클래스 변수는 클래스의 사용을 확장 할 수 없습니다.당신이 간 클래스 변수를 원한다면, 당신은 전역 변수를 정의해야합니다. 전역 변수는 항상 달러 기호 ($)로 시작합니다.

클래스 변수 @@ no_of_customers를 사용하면 사용자가 고객의 수를 결정할 수 있도록 객체의 수가 생성되도록 결정할 수있다.

클래스 고객
   @@ No_of_customers = 0
끝

루비의새로운방법을 사용하여 객체를 생성

객체는 클래스의 인스턴스입니다. 이제 루비 클래스의 객체를 생성하는 방법을 배웁니다. 루비에서는새로운객체를 생성하는 클래스 방법을 사용할 수 있습니다.

새로운방법은 독특한 접근 방식, 루비에서 미리 정의 된 라이브러리입니다. 새로운 방법은클래스메소드에 속한다.

다음의 예는 클래스 고객 및 cust2 cust1 두 개체를 만듭니다

cust1 = 고객. 새로운
cust2 = 고객. 새로운

여기에, cust1 및 cust2는 두 개체의 이름입니다. 클래스 이름, 다음 도트 연산자 및 키워드새로운다음에 등호 후 등호 (=) 다음에 개체 이름후.

지정 방법은 루비 객체를 생성합니다

이러한 매개 변수는 클래스 변수를 초기화하는 데 사용될 수있는새로운방법에 파라미터를 전달할 수있다.

이 매개 변수를 사용하여새로운방법 선언을 할 때, 당신은 방법의초기화를선언 같은 시간에 클래스를작성해야합니다.

초기화방법은새로운방법은 매개 클래스를 호출 할 때 방법의 특별한 유형이 실행될 것이다.

다음의 예는 초기화 방법을 만듭니다

클래스 고객
   @@ No_of_customers = 0
   데프 초기화 (ID, 이름, 요지)
      @ CUST_ID = 아이디
      @ CUST_NAME = 이름
      @ Cust_addr = 요지
   끝
끝

이 예제에서는initialize메소드 지역 변수로ID, 이름, 요지로 선언 할 수 있습니다.여기에,데프과루비 방법을 정의하기위한초기화.다음 장에서는 방법에 대한 자세한 내용을 알아 보겠습니다.

초기화 방법에있어서,CUST_NAME 및 @cust_addr @ 인스턴스 변수 @의 CUST_ID 이러한 지역 변수의 값. 여기에, 전달의 새로운 방법으로 지역 변수의 값입니다.

다음과 같이 이제 개체를 만들 수 있습니다 :

cust1 = Customer.new ( "1", "존", "지혜 아파트, Ludhiya")
cust2 = Customer.new ( "2", "Poul를", "새로운 제국 도로, Khandala")

루비 클래스 멤버 함수

루비에서, 함수는 방법이라고합니다. 각클래스의메소드는 메소드 이름 다음 키워드DEF에기초한다.

메소드의 이름은 항상 소문자입니다.루비에서는 하나의 방법을 종료 키워드끝을사용할 수 있습니다.

다음의 예는 루비 방법을 정의한다 :

클래스 샘플
   데프 기능
      문 1
      문 2
   끝
끝

이때문 1문이 신체내의 클래스 샘플함수 방법의일부이다. 이 문은 유효한 루비 문이 될 수 있습니다. 예를 들어, 다음과 같이우리는출력헬로 루비있어서둔다를 사용할수있다:

클래스 샘플
   데프 안녕하세요
      "안녕하세요 루비!"둔다
   끝
끝

다음의 예는 클래스 샘플의 객체를 생성 및 방법안녕하세요전화 :

#!를 / usr / 빈 / 루비

클래스 샘플
   데프 안녕하세요
      "안녕하세요 루비!"둔다
   끝
끝

# = 샘플 개체 개체를 만들 수 위의 클래스를 사용합니다. 새로운
object.hello

이것은 다음과 같은 결과를 생성 할 것이다 :

안녕하세요 루비!

간단한 사례 연구

당신은 클래스와 객체에 대한 자세한 운동을하려면, 사례 연구가있다 :

루비 클래스 케이스