Boo 언어에서도 한 개의 소스 파일에 여러 개의 클래스가 존재해도 된다. 또 클래스명과 다른 파일명으로 저장해도 된다. Boo 언어의 구뮨 몸체는 Python 언어에서 빌려왔지만, Python 언어는 동적 타이핑(즉 변수의 타입이 실행시 결정되는) 언어, Boo 언어는 정적 타이핑(즉 변수의 타입이 컴파일시 결정되는) 언어라는 점이 다르다.
또한 Boo 언어는 닷넷환경에서 동작하는 만큼 내부적으로는 C# 언어에서 사용하는 개념들을 내포하고 있다.
다음은 두 개의 클래스로 구성되어 있다.
Parent는 부모 클래스이고 Child는 Parent에서 상속 받은 자식 클래스이다.
class Parent:
_name as string
def constructor(): # 클래스 생성자. 이것이 있어야 서브클래싱을 할 수 있다.
pass
def constructor(name as string): # 클래스 생성자
_name = name
def sayName():
print("I am Parent, " + _name)
_name as string
def constructor(): # 클래스 생성자. 이것이 있어야 서브클래싱을 할 수 있다.
pass
def constructor(name as string): # 클래스 생성자
_name = name
def sayName():
print("I am Parent, " + _name)
class Child(Parent): # 부모 클래스 상속
def constructor(name as string):
_name = name
def sayName():
print("I am a child, named as " + _name)
obj as Child = Child("Dooly") # 클래스 생성
obj.sayName()
실행> booi testSubclassing.boo
I am a child, named as Dooly
'프로그래밍 > Boo' 카테고리의 다른 글
스트링 배열 정렬(sorting)하기 for .NET with Boo (0) | 2009.04.20 |
---|---|
삼각형 출력 예제를 통한 여러 가지 소스 비교 with Boo (0) | 2009.04.08 |
손으로 계산하는 긴자리 곱셈표 만들기 with Boo (0) | 2009.04.04 |
Boo 언어로 공백 문자 없이 연속적으로 출력하려면 (0) | 2009.04.04 |
문자열 거꾸로 하기 with Boo (0) | 2009.04.04 |