{"id":20048495,"url":"https://github.com/lefteris-souflas/object-oriented-programming-java-project","last_synced_at":"2025-03-02T08:21:28.066Z","repository":{"id":229335088,"uuid":"776468494","full_name":"Lefteris-Souflas/Object-Oriented-Programming-Java-Project","owner":"Lefteris-Souflas","description":"Object Oriented Programming Java Project for Class creation and Inheritance.","archived":false,"fork":false,"pushed_at":"2024-04-15T18:51:24.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-12T20:33:36.782Z","etag":null,"topics":["class","constructor","getters-and-setters","java","methods","object-oriented-programming","properties","subclass"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Lefteris-Souflas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-03-23T15:41:55.000Z","updated_at":"2024-04-20T13:50:57.000Z","dependencies_parsed_at":"2024-03-23T16:47:00.597Z","dependency_job_id":"090837d6-fcd0-4f8f-afe0-87b0f054fd79","html_url":"https://github.com/Lefteris-Souflas/Object-Oriented-Programming-Java-Project","commit_stats":null,"previous_names":["codeninjatech/object-oriented-programming-java-project","lefteris-souflas/object-oriented-programming-java-project"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lefteris-Souflas%2FObject-Oriented-Programming-Java-Project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lefteris-Souflas%2FObject-Oriented-Programming-Java-Project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lefteris-Souflas%2FObject-Oriented-Programming-Java-Project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lefteris-Souflas%2FObject-Oriented-Programming-Java-Project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Lefteris-Souflas","download_url":"https://codeload.github.com/Lefteris-Souflas/Object-Oriented-Programming-Java-Project/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241478068,"owners_count":19969216,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["class","constructor","getters-and-setters","java","methods","object-oriented-programming","properties","subclass"],"created_at":"2024-11-13T11:44:19.964Z","updated_at":"2025-03-02T08:21:28.029Z","avatar_url":"https://github.com/Lefteris-Souflas.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Class Creation and Inheritance - Object Oriented Programming Java Project\n\nProject for the Java Course of the Department of Programmers-Analysts of the School of Computer Programmers of the Hellenic Armed Forces\n\n## Description\n\nCreate a class named `Person` that has the following properties encapsulated:\n- `idNumber`\n- `firstName`\n- `lastName`\n- `address`\n- `mobile`\n\nCreate a constructor that accepts only the first 3 properties. Also, have for all properties the corresponding getters and setters and in addition the following methods:\n- `getName` where it returns the first and last name of Person together separated by a space\n- `toString` which displays the Person's data as follows:\n```\nPerson {\nID Number: ...\nFirst Name: ...\nLast Name: ....\nAddress: ....\nMobile: ...\n}\n```\n\nThen create a subclass named `Student` that has the following properties encapsulated:\n- `program`\n- `entryYear`\n- `currentYear`\n\nThe variable `entryYear` should only take integer values between the years 2000 and 2050.\nThe variable `currentYear` shall only take values between 1 and 6.\n\nBuild a constructor that accepts only the first 3 properties of Person and the first 3 properties of Student. Have also for all properties, the corresponding getters and setters and in addition the following methods:\n- `getStatus` where it returns the student's name, program, entryYear, and currentYear\n- `toString` which displays all the Student's details using also the toString of Person\n\nThen create a subclass named `Staff` that has the following properties encapsulated:\n- `school`\n- `salary`\n\nThe variable `salary` should only take floating-point values between 0 and 10000.\n\nBuild a constructor which accepts only the first 3 properties of Person and the first 2 properties of Staff. It should also have for all properties, the corresponding getters and setters and in addition the following methods:\n- `toString` which displays all elements of Staff using both toString of Person\n\nFinally, build a program (main) in which the classes Student and Staff are used. That is, create two objects, a Student and a Staff and call the `toString()` methods for each object.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flefteris-souflas%2Fobject-oriented-programming-java-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flefteris-souflas%2Fobject-oriented-programming-java-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flefteris-souflas%2Fobject-oriented-programming-java-project/lists"}