1. 클래스란
ㅇ 객체 지향 프로그래밍(Object-Oriented Programming)을 위한 개념으로, 특정 속성과 메서드를 가진 객체를 생성하기 위한 설계도 또는 틀이라고 할 수 있습니다. 클래스는 데이터(속성)와 이를 처리하는 함수(메서드)를 함께 정의하여, 복잡한 문제를 더 쉽게 다룰 수 있도록 돕습니다.
2. 예시
ㅇ 위는 title, authorm genres 라는 것을 가지고
ㅇ describe_book 이라는 매서드를 갖는다
ㅇ 위처럼 사용하면 된다
ㅇ 위 코드의 차이는 d는 설계도로 인스턴스를 하나 만든것
ㅇ c는 설계도에 직접 값을 박아버린것
ㅇ 위는 결과임
3. 생성자
ㅇ 메서드를 만들고 생성할 수 있음
ㅇ __init__은 생성자임. 생성시 초기화 해주는 애임
ㅇ 매개변수에 넣어서 생성 가능
ㅇ describe_book() 메서드임
ㅇ 사용시 print 안의 내용이 나옴
ㅇ __string__ 으로 print(인스턴스) 할 시 출력되는거임
ㅇ 그래서 return으로 출력해야지 print 안에 넣어서 출력 가능
ㅇ 위는 클래스로 생성한 인스턴스들
ㅇ 메서드들은 인스턴스명.메서드() 이런식으로 사용
ㅇ 위는 describe_book() 실행 결과
ㅇ 인스턴스를 프린트하면
ㅇ 이렇게 __str__에 적은 결과가 나옴