Notice
Recent Posts
Recent Comments
Tags
- ViewData
- asp.net core Select
- asp.net Select
- ViewBag
- 404에러페이지
- SSD 복사
- 맥 오라클설치
- XSS PHP
- 파일업로드 유효성체크
- 말줄임표시
- ASP.Net Core 404
- TempData
- php 캐쉬제거
- 강제이동
- 타임피커
- 바코드 생성하기
- jquery 바코드생성
- 하드 윈도우 복사
- javascript 바코드 생성
- XSS방어
- javascript redirection
- 하드 마이그레이션
- javascript 유효성체크
- javascript 바코드스캔
- 파일업로드 체크
- 바코드 스캔하기
- jquery 바코드
- Mac Oracle
- django 엑셀불러오기
- asp.net dropdownlist
웹개발자의 기지개
[Python] 클래스3 - 상속 본문
# 파이썬 클래스 상세 이해
# 상속, 다중상속
# 예제1
# 상속 기본
# 슈퍼 클래스 (부모 클래스) 및 서브 클래스(자식) -> 모든 속성, 메소드 사용가능하다.
# 라면 -> 속성(종류 , 회사, 맛, 면종류, 이름) : 부모
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
class Car:
"""Parent Class"""
def __init__(self, tp, color):
self.type = tp
self.color = color
def show(self):
return "Car Class 'Show Method!'"
class BmwCar(Car):
"""Sub Class"""
def __init__(self, car_name, tp, color):
super().__init__(tp,color)
self.car_name = car_name
def show_model(self) -> None:
return "You Car Name : %s" % self.car_name
class BenzCar(Car):
"""Sub Class"""
def __init__(self, car_name, tp, color):
super().__init__(tp,color)
self.car_name = car_name
def show_model(self) -> None:
return "You Car Name : %s" % self.car_name
def show(self): # 부모한테도 있는 show() 메소드
print(super().show())
return 'Car Info : %s %s %s' % (self.car_name, self.type, self.color)
# 일반 사용
model1 = BmwCar('520d', 'sedan', 'red')
print(model1.color) # super
print(model1.type) # super
print(model1.car_name) # sub
print(model1.show()) # super
print()
print(model1.show_model()) # sub
print(model1.__dict__)
print()
# 메소드 Overriding (오버라이딩)
model2 = BenzCar('220d','suv','black')
print(model2.show()) # sub Method Overriding 자식에서 별도로 오버라이딩한 show() 메소드
print()
# Parent Method Call
model3 = BenzCar("350s","sedan", "silver")
print(model3.show()) # sub Method Overriding
# Inheritance Info - 상속관계 보기
print(BmwCar.mro())
print(BenzCar.mro())
|
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# 다중 상속
# class X(object):
# pass
class X():
pass
class Y():
pass
class Z():
pass
class A(X,Y):
pass
class B(Y,Z):
pass
class M(B,A,Z):
pass
print(M.mro())
print(A.mro())
|
cs |
'python > 파이썬 교육' 카테고리의 다른 글
[Python] for 문 정리 - key, value, items(), keys() (0) | 2021.05.05 |
---|---|
[Python] matplotlib 실습하기 1 (0) | 2021.05.05 |
[Python] 클래스2 - 클래스변수, 인스턴스 변수 (0) | 2021.05.05 |
[Python] Pandas 2 예제 (0) | 2021.05.05 |
[python] 클래스1 (0) | 2020.06.18 |
Comments