오브젝트 실습3

class Text:
    def __init__(self, str):
        self.text = str

    def __str__(self):
        return "Text: " + self.text

    def getLength(self):
        return len(self.text)

class Article(Text):
    def __init__(self, title, text):
        self.title = title
        self.text = text

    def __str__(self):
        return "Article: %s" % self.title

class User:
    numUsers = 0
    def __init__(self, name):
        self.numArticle = 0
        self.name = name
        self.articles = []
        User.numUsers += 1

    def write(self, text):
        self.articles.append(text)

    def getNumArticles(self):
        return len(self.articles)

    def __str__(self):
        str_articles = ", ".join([str(t) for t in self.articles])
        return "User: %s [%s]" % (self.name, str_articles)

t = Article("hello", "This is some text")
t2 = Article("world", "This is some text2")
user = User('honux')
user.write(t)
user.write(t2)
print(t, t.getLength())
print(user, user.getNumArticles())

강좌에서 만든 코드와 강의자료의 첨부된 코드도 비교해 보세요. 생활코딩 객체 지향 프로그래밍 링크: https://opentutorials.org/course/743/6553
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스