Grinding Java fundamentals with OOP's. Recursion What I did: * Learned how recursion actually works (function calling itself with a base case) * Practiced core problems like factorial, Fibonacci, and power calculation * Understood different types of recursion (direct, indirect, tail, head, tree) * Analyzed how recursion uses the call stack internally * Identified when recursion is useful and when it becomes inefficient Key insight: Recursion is not magic. If you don’t clearly define the base case and progression, your code will either crash or give wrong results. More learning ahead. GitHub: https://lnkd.in/gS-e6igR #Java #OOP #Recursion #BackendDevelopment #gfg
Mastering Java Recursion Fundamentals
More Relevant Posts
-
Learning Polymorphism in Java Today I explored one of the core concepts of OOPs – Polymorphism. It allows a single method to perform multiple behaviors depending on the object. 🔹 Covered: Compile-time polymorphism (Method Overloading) Runtime polymorphism (Method Overriding) Real examples with Java code Understanding this concept improves code flexibility, reusability, and scalability. 📘 Sharing my handwritten notes + examples for better understanding. #Java #OOP #Polymorphism #Programming #CodingJourney #Learning #JavaDeveloper #SoftwareDevelopment
To view or add a comment, sign in
-
-
Same data. Same values. Still stored twice? 🤯 That’s when I realized — Java doesn’t care about values… It cares about objects 🧠 Two objects may look identical, but for Java — they can be completely different ⚠️ And this is where many developers get confused. 🚨 Stop just watching tutorials… Real growth = Practice + Consistency 💯 🔥 Java Daily Practice ☕️ 👉 Join & start today 🔗 https://lnkd.in/gfhqgjGd 🚀 Here’s a quick challenge 👇 💬 What do you think the output will be? #Java #JavaDeveloper #HashSet #Collections #OOP #Programming #Debugging #BackendDeveloper #Coding #TechLearning #DeveloperTips #LinkedInIndia
To view or add a comment, sign in
-
Today’s learning and revising ✨ Dived deep into one of the most fundamental concepts in Java — Variables. 🔹 What is a Variable? A variable is a named memory location used to store data that can change during program execution. 🔹 How JVM allocates memory? JVM divides memory mainly into Stack 🧱 and Heap 🌐 Stack → Stores method calls & local variables Heap → Stores objects & instance variables Memory is efficiently managed using stack frames and garbage collection 🔹 Types of Variables in Java: 1️⃣ Local Variable Declared inside methods Stored in stack memory No default values 2️⃣ Instance Variable Declared inside class but outside methods Stored in heap memory Each object has its own copy 3️⃣ Static Variable (Class Variable) Shared among all objects Allocated once in method area 💡 Key takeaway: Understanding variables is not just syntax — it’s about how memory works behind the scenes and how efficiently we use it. #Java #FullStackDevelopment #LearningJourney #JVM #Programming
To view or add a comment, sign in
-
-
Day 10/100 – Java Practice Challenge 🚀 Continuing my #100DaysOfCode journey with another important Java concept. 🔹 Topic Covered: Polymorphism Polymorphism means “many forms” — the same method behaves differently depending on the object. 💻 Practice Code: 🔸 Example Program class Animal { void sound() { System.out.println("Animal makes sound"); } } class Dog extends Animal { @Override void sound() { System.out.println("Dog barks"); } } public class Main { public static void main(String[] args) { Animal a = new Dog(); // Upcasting a.sound(); // Runtime polymorphism } } 📌 Key Learnings: ✔️ Same method → different behavior ✔️ Achieved using method overriding ✔️ Based on object type (runtime) 🎯 Focus: Understanding dynamic behavior using inheritance and method overriding 🔥 Interview Insight: Polymorphism is a core OOP concept and widely used in real-world applications. #Java #100DaysOfCode #Polymorphism #OOP #JavaDeveloper #Programming #LearningInPublic
To view or add a comment, sign in
-
🚀 Day 14 of Java Learning 📌 Today’s Topic: Instance Block vs Static Block vs Constructor 💡 Here’s what I learned: ✔️ Static Block → Executes only once (at class loading time) ✔️ Instance Block → Runs every time an object is created ✔️ Constructor → Initializes the object after instance block ✔️ Execution Order → Static → Main → Instance → Constructor → Method 🧠 Key Takeaways: 🔹 Static blocks are useful for one-time setup 🔹 Instance blocks run before constructors 🔹 Constructors help in object initialization 🔹 Understanding execution flow is super important for interviews 💻 Practiced with code examples to understand real execution flow 🔥 📈 Consistency is the key — one step closer to mastering Java! #Java #Programming #Coding #Developers #OOP #100DaysOfCode
To view or add a comment, sign in
-
-
Today I Learned: Java Interfaces Today I deep-dived into one of the most important OOP concepts in Java — Interfaces. An interface is like a contract that tells a class what to do, but not how to do it. This concept plays a huge role in writing clean, scalable, and maintainable code. 🔹 Key takeaways: ✅ Interfaces help achieve 100% abstraction ✅ They support multiple inheritance in Java ✅ Promote loose coupling between classes ✅ Interface methods are public & abstract by default ✅ Variables inside interfaces are public, static & final (constants) ✅ From Java 8 → Interfaces can have default & static methods ✅ From Java 9 → Interfaces can have private methods #interface #Java #Programming #OOP #Encapsulation #Coding #Developer #SoftwareEngineering #Learning #Tech #JavaDeveloper #Java #OOP #Inheritance #Programming #Coding #JavaDeveloper #Learning #InterviewPrep #Java #JavaProgramming #JavaDeveloper #SoftwareDevelopment #Programming #Coding #BackendDevelopment #TechLearning #Developers #LearnToCode #ProgrammingCommunity #100DaysOfCode #CodeNewbie #TechCareer #SoftwareEngineer
To view or add a comment, sign in
-
-
#Day_13 of My Java Learning Journey – Writing Functions in Java Today I practiced how to create functions (methods) in Java, and I built a simple program to check whether a number is Even or Odd. 🔥 What I learned today: ✔ How to create a boolean function ✔ How to use if-else conditions inside a method ✔ How to return true/false ✔ How to call a method inside the main() function ✔ How to print the result in the console 🧩 Example I worked on: I created a method IfEven(int a) that: Prints whether the number is Even or Odd Returns a boolean value (true for even, false for odd) This helped me understand functions more clearly and how they improve code structure and reusability. #Java #LearningJourney #100DaysOfCode #Coding #Developer #JavaBeginners #OOP #CodeNewbie
To view or add a comment, sign in
-
-
Day 52-What I Learned In a Day (JAVA) Today I learned some fundamental concepts in Java related to objects and methods. 🔹 Creating Objects (for Non-Static Methods) Understood that to access non-static methods, we must create an object of the class. 🔹 Steps to Create an Object 1️⃣ Declare reference variable 2️⃣ Create object using new keyword 3️⃣ Assign it to the reference 🔹 new Keyword Learned that it is used to allocate memory in the heap and create an object. 🔹 Non-Primitive Data Types Explored how objects, arrays, and classes store references instead of actual values. 🔹 Accessing Data from Another Class Learned how to access variables and methods from another class by creating an object of that class and using the reference. These concepts helped me understand how Java objects work, how memory is managed, and how classes interact with each other. #Java #OOP #Programming #LearningJourney #Coding #100DaysOfCode
To view or add a comment, sign in
-
-
🚀 Want to understand how ArrayList really works in Java? In this short video, I break down the basics of the List interface and show how ArrayList handles: ✅ adding elements ✅ resizing when full ✅ inserting at a specific index ✅ removing elements ✅ fast access with get(i) A simple visual explanation of one of the most used data structures in Java. Perfect for beginners, students, and anyone sharpening their DSA fundamentals. 💡☕ #Java #ArrayList #DataStructures #Algorithms #Programming #SoftwareDevelopment #Coding #JavaDeveloper #LearnToCode #ComputerScience #DSA #BackendDevelopment #Developers #TechEducation #CodeNewbie
Java ArrayList Explained in 45 Seconds
To view or add a comment, sign in
-
🚀 DSA Journey — LeetCode Practice 📌 Problem: Same Tree 💻 Language: Java 🔹 Approach: To solve this problem, I used Recursion to compare both binary trees node by node. • If both nodes are null → return true • If one node is null and the other is not → return false • If node values are different → return false • Recursively compare left subtrees • Recursively compare right subtrees • If both left and right comparisons return true → both trees are identical This approach works because each subtree is itself a smaller version of the same problem, making recursion a natural fit. ⏱ Time Complexity: O(n) 🧩 Space Complexity: O(h) (where h = height of tree, worst case O(n)) 📖 Key Learning: This problem strengthened my understanding of tree traversal, recursion, and base case handling. It also reinforced how breaking a problem into smaller subproblems makes tree problems much easier to solve 💡 #DSA #Java #LeetCode #ProblemSolving #CodingJourney #LearningInPublic #BinaryTree #Recursion
To view or add a comment, sign in
-
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development