클래스의 기본 구조
class NewClass
# Class 내부 코드 작성
end
클래스 내부에는 당연하게도 (생성자를 포함한) 함수 선언이 가능하다.
인스턴스 변수의 선언에는 @
을 사용한다.
생성자 선언
class NewClass
def initialize(param)
@param = param
end
end
# 생성자로 객체 생성
class = newClass.new("param1")
인스턴스 변수: @
클래스 변수: @@
전역 변수: $
class NewClass
$global_value = "global"
@@class_value = "class"
def initialize(instance_value)
@instance_value = instance_value
end
end
puts $global_value
class InheritClass < NewClass
end
함수 오버라이딩은 함수명을 그대로 써서 재정의?하면 된다.
class NewClass
def method1
return "Hello"
end
def method2(param)
return "Hello #{param}"
end
class InheritClass < NewClass
# 오버라이딩 1
def method1
return "Hi"
end
# 오버라이딩 2
def method2(param)
super(param)
end
end
class NewClass
def NewClass.method
end
end