Ejercicio
Colección De Fotografías De Clase
Objectivo
Desarrolla una clase Python llamada "PhotoAlbum" con un atributo privado "pageCount".
Incluye un método público "getPageCount" que devolverá la cantidad total de páginas del álbum.
El constructor predeterminado debe crear un álbum con 16 páginas, pero también debe haber un constructor alternativo para especificar un recuento de páginas personalizado al crear el álbum.
Además, crea una subclase llamada "LargePhotoAlbum" donde el constructor establecerá las páginas del álbum en 64 de manera predeterminada.
Escribe una clase de prueba separada "AlbumTest" para crear:
Un álbum con el constructor predeterminado.
Un álbum con 24 páginas.
Un "LargePhotoAlbum". Luego, muestra la cantidad total de páginas en los tres álbumes.
Ejemplo de ejercicio de Python
Mostrar código Python
# Base class PhotoAlbum
class PhotoAlbum:
def __init__(self, page_count=16):
# Initialize the album with a default or specified page count
self.__pageCount = page_count # Private attribute for page count
def getPageCount(self):
# Return the total number of pages in the album
return self.__pageCount
# Subclass LargePhotoAlbum that inherits from PhotoAlbum
class LargePhotoAlbum(PhotoAlbum):
def __init__(self):
# Initialize the large photo album with a default of 64 pages
super().__init__(64) # Calls the constructor of PhotoAlbum with 64 pages
# Test class to demonstrate the functionality
class AlbumTest:
@staticmethod
def Main():
# Create a PhotoAlbum with the default constructor (16 pages)
album1 = PhotoAlbum()
print(f"Album 1 has {album1.getPageCount()} pages.")
# Create a PhotoAlbum with 24 pages
album2 = PhotoAlbum(24)
print(f"Album 2 has {album2.getPageCount()} pages.")
# Create a LargePhotoAlbum (64 pages)
large_album = LargePhotoAlbum()
print(f"Large PhotoAlbum has {large_album.getPageCount()} pages.")
# Run the test class
AlbumTest.Main()
Output
python photo_album.py
Album 1 has 16 pages.
Album 2 has 24 pages.
Large PhotoAlbum has 64 pages.
Código de ejemplo copiado
Comparte este ejercicio de Python