Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Циганій Максим
- //Лабораторна робота №2 (Класи та об'єкти)
- class UniversityTeacher( //Викладачі вузу
- private val nameInfo: NameInfo,
- private val scientificDegreeInfo: ScientificDegreeInfo,
- private val contactInfo: ContactInfo,
- private val maritalStatus: MaritalStatus,
- private val workInfo: WorkInfo,
- private val departmentInfo: DepartmentInfo,
- private val managerInfo: ManagerInfo,
- ) {
- fun classInfo() = println("Цей клас містить всю інформацію про викладача.")
- fun getNameInfo(teacher: UniversityTeacher) {
- val info = teacher.nameInfo
- println("${info.firstName} ${info.surname} ${info.patronymicName}")
- }
- fun scientificDegreeInfo(teacher: UniversityTeacher) {
- val info = teacher.scientificDegreeInfo
- println("Науковий ступінь: ${info.scientificDegree}, вчене звання: ${info.scientificTitle}")
- }
- fun contactInfo(teacher: UniversityTeacher) {
- val info = teacher.contactInfo
- println("Телефон: ${info.phone}, адреса: ${info.address}")
- }
- fun maritalStatusInfo(teacher: UniversityTeacher) {
- val info = teacher.maritalStatus
- println("Cімейний стан: ${info.maritalStatus}, кількість дітей: ${info.numberOfChildren}")
- }
- fun workInfo(teacher: UniversityTeacher) {
- val info = teacher.workInfo
- println("Посада: ${info.position}, табельний номер: ${info.rollNumber}, оклад: ${info.salary}, дата прийому на роботу:${info.dateOfEmployment}")
- }
- fun departmentInfo(teacher: UniversityTeacher) {
- val info = teacher.departmentInfo
- println("Назва кафедри: ${info.nameOfTheDepartment}, кількість викладачів: ${info.numberOfTeachers}")
- }
- fun managerInfo(teacher: UniversityTeacher) {
- teacher.managerInfo.getManagerNameInfo()
- teacher.managerInfo.managerContactInfo()
- }
- }
- class ScientificDegreeInfo(
- val scientificDegree: String, //науковий ступінь
- val scientificTitle: String, //вчене звання
- )
- class NameInfo(
- val surname: String, //прізвище
- val firstName: String, //ім’я
- val patronymicName: String, //по-батькові
- )
- class ContactInfo(
- val phone: String, //телефон
- val address: String, //адреса
- )
- class MaritalStatus(
- val maritalStatus: String, //сімейний стан
- val numberOfChildren: Int, //кількість дітей
- )
- class WorkInfo(
- val position: String, //посада
- val rollNumber: Int, //табельний номер
- val salary: Double, //оклад
- val dateOfEmployment: String, //дата прийому на роботу
- )
- class DepartmentInfo(
- val nameOfTheDepartment: String, //назва кафедри
- val numberOfTeachers: Int, //кількість викладачів
- )
- class ManagerInfo(
- private val nameInfo: NameInfo,
- private val contactInfo: ContactInfo,
- private val workPhone: String, //робочий телефон
- ) {
- fun getManagerNameInfo() {
- println("${nameInfo.firstName} ${nameInfo.surname} ${nameInfo.patronymicName}")
- }
- fun managerContactInfo() {
- println("Телефон: ${contactInfo.phone}, адреса: ${contactInfo.address}, робочий телефон: $workPhone")
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement