{"id":30962916,"url":"https://github.com/nuwanthikaishani/oop-fundamentals-java","last_synced_at":"2026-08-16T22:32:16.597Z","repository":{"id":309958614,"uuid":"1037286491","full_name":"nuwanthikaishani/oop-fundamentals-java","owner":"nuwanthikaishani","description":"Code snippets and mini-projects to understand and practice OOP principles in Java.","archived":false,"fork":false,"pushed_at":"2025-08-17T15:16:20.000Z","size":19,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-09-11T21:19:18.814Z","etag":null,"topics":["abstraction","encapsulation","inheritance","inheritance-examples","java","method-overloading","method-overriding","oop","oop-principles","polymorphism"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nuwanthikaishani.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-13T10:47:20.000Z","updated_at":"2025-08-17T15:16:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"fa8824c6-da9a-4fb6-a9a9-0fafdb16ca50","html_url":"https://github.com/nuwanthikaishani/oop-fundamentals-java","commit_stats":null,"previous_names":["nuwanthikaishani/oop-fundamentals-java"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nuwanthikaishani/oop-fundamentals-java","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nuwanthikaishani%2Foop-fundamentals-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nuwanthikaishani%2Foop-fundamentals-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nuwanthikaishani%2Foop-fundamentals-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nuwanthikaishani%2Foop-fundamentals-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nuwanthikaishani","download_url":"https://codeload.github.com/nuwanthikaishani/oop-fundamentals-java/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nuwanthikaishani%2Foop-fundamentals-java/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36725730,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-06T04:43:03.162Z","status":"online","status_checked_at":"2026-08-16T02:00:06.462Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["abstraction","encapsulation","inheritance","inheritance-examples","java","method-overloading","method-overriding","oop","oop-principles","polymorphism"],"created_at":"2025-09-11T20:13:01.060Z","updated_at":"2026-08-16T22:32:16.593Z","avatar_url":"https://github.com/nuwanthikaishani.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📘 OOP Concepts in Java – Example Codes \n\nA collection of **beginner-to-advanced examples** that demonstrate the core principles of **Object-Oriented Programming (OOP)** using Java.  \nThis repository is designed to help students, beginners, and interview candidates **understand, practice, and master OOP** with small, practical code snippets.  \n\n---\n\n## 🎯 What You’ll Learn\n- ✅ Classes \u0026 Objects  \n- ✅ Encapsulation  \n- ✅ Inheritance  \n- ✅ Polymorphism (Overloading \u0026 Overriding)  \n- ✅ Abstraction (Abstract classes \u0026 Interfaces)  \n- ✅ Composition, Aggregation \u0026 Association  \n- ✅ Static \u0026 Final usage  \n- ✅ Constructor Overloading  \n- ✅ Inner Classes  \n- ✅ Enums  \n- ✅ Interfaces \u0026 Multiple Inheritance  \n- ✅ Design Patterns (Singleton, Factory, Strategy, Observer)  \n\n---\n## 📂 Project Structure\n\n\n```text\noop-concepts-examples/\n│\n├── encapsulation/       # Getters/Setters, Private fields, Immutable classes\n├── inheritance/         # Parent/Child classes, Super/Override\n├── polymorphism/        # Overloading, Overriding, Interfaces\n├── abstraction/         # Abstract classes \u0026 methods, Interfaces\n├── composition/         # HAS-A relationships (Car → Engine)\n├── association/         # Teacher–Student, Department–Professors\n├── static-final/        # Static methods, Constants\n├── constructors/        # Constructor overloading examples\n├── inner-classes/       # Static \u0026 Non-static inner classes\n├── enums/               # Day, OrderStatus enums\n├── interfaces/          # Multiple inheritance with interfaces\n└── design-patterns/     # Singleton, Factory, Strategy, Observer\n\n\n```\n\n## 🚀 Getting Started\n### 1. Clone the repository\n```bash\ngit clone https://github.com/nuwanthikaishani/oop-fundamentals-java\ncd oop-fundamentals-java\n```\n\n### 2. Compile and Run\n```bash\ncd src/encapsulation\njavac EncapsulationDemo.java\njava EncapsulationDemo\n```\n\n## 🎓 Who Is This For?\n- ✅ Students learning Java OOP for the first time\n- ✅ QA Engineers preparing for coding interviews\n- ✅ Anyone who wants a quick refresher on OOP principles\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnuwanthikaishani%2Foop-fundamentals-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnuwanthikaishani%2Foop-fundamentals-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnuwanthikaishani%2Foop-fundamentals-java/lists"}