클래스 다형성
다형성의 개념은 실제로 이해하기 어렵지 않습니다. 다른 유형의 변수에 대해 동일한 작업을 수행하는 것을 말하며, 객체(또는 클래스)의 유형에 따라 다른 동작을 나타냅니다.
실제로 우리는 다음과 같은 다형성 속성을 자주 사용합니다.
>>> 1 + 2 3 >>> 'a' + 'b' 'ab'
두 정수에 대해 + 연산을 수행하면 두 문자에 대해 동일한 + 연산이 연결된 문자열을 반환한다는 것을 알 수 있습니다. 즉, 서로 다른 유형의 개체는 동일한 메시지에 다르게 응답합니다.
다형성을 이해하려면 다음 예를 살펴보세요.
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class User(object):
def __init__(self, name):
self.name = name
def printUser(self):
print('Hello !' + self.name)
class UserVip(User):
def printUser(self):
print('Hello ! 尊敬的Vip用户:' + self.name)
class UserGeneral(User):
def printUser(self):
print('Hello ! 尊敬的用户:' + self.name)
def printUserInfo(user):
user.printUser()
if __name__ == '__main__':
userVip = UserVip('两点水')
printUserInfo(userVip)
userGeneral = UserGeneral('水水水')
printUserInfo(userGeneral)출력 결과:
Hello ! 尊敬的Vip用户:两点水 Hello ! 尊敬的用户:水水水
userVip과 userGeneral이 서로 다른 두 개체라는 것을 알 수 있습니다. 이에 대해 printUserInfo 메서드를 호출하면 자동으로 printUser의 실제 유형이 호출됩니다. .다르게 대응하는 방법. 이것이 다형성의 아름다움입니다.
상속에는 다형성이 따르며, 다양한 유형의 객체는 동일한 메시지에 다르게 반응합니다.
새로운 파일
시사
Clear
- 코스 추천
- 코스웨어 다운로드
현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~
이 강좌를 시청한 학생들도 학습하고 있습니다.
PHP로 사업을 시작하는 방법에 대해 간단히 이야기해 보겠습니다.
웹 프론트 엔드 개발에 대한 빠른 소개
민망한 물건 백과사전 사이트를 모방한 Mini 버전 MVC 프레임워크의 대규모 실용 Tianlongbabu 개발
PHP 실용 개발 시작하기: 빠른 PHP 생성 [중소기업 포럼]
로그인 인증 및 클래식 게시판
컴퓨터 네트워크 지식 수집
빠른 시작 Node.JS 정식 버전
당신을 가장 잘 이해하는 프론트엔드 강좌: HTML5/CSS3/ES6/NPM/Vue/...[원본]
자신만의 PHP MVC 프레임워크 작성(깊이 있는 40개 장/자세한 내용/초보자가 발전하려면 읽어야 함)
















