Day 11 - What I Learned In a Day(JAVA) Today I learned that Java variables are classified into two areas and understood their scope. 1️⃣ Global Area (Instance Variable) Declared inside the class but outside methods. Accessible by all methods inside the class. Scope: Entire class. Memory is created when the object is created. 2️⃣ Local Area (Local Variable) Declared inside a method, constructor, or block. Accessible only inside that method or block. Scope: Limited to that block only. Memory is created when the method runs. Types of Variables in Java (Based on Scope): 1️⃣ Local Variable Declared inside a method. Used only inside that method. Cannot be used outside the method. 2️⃣ Non-Static Variable (Instance Variable) Declared inside the class but outside methods. Belongs to the object. Each object has its own copy. 3️⃣Static Variable Declared using static keyword. Belongs to the class. One copy is shared by all objects. Three Important Statements in Java (Variables): 1️⃣ Declaration Creating a variable. You are telling Java the type and name of the variable. No value is given. Example: int a; 2️⃣ Initialization Giving a value to a variable. The variable must already be declared. Example: a = 10; 3️⃣ Declaration + Initialization Creating the variable and giving value at the same time. Example: int a = 10; Practiced 👇 #Java #Variables #Programming #CodingJourney
More Relevant Posts
-
Day 8/100 — Mastering Strings in Java 🔤 Today I explored one of the most important topics in Core Java: Strings. Every Java developer should clearly understand these three concepts: 1️⃣ Immutability In Java, a String object cannot be changed after it is created. Any modification actually creates a new object in memory. 2️⃣ String Pool Java optimizes memory using the String Pool. When we create strings using literals, Java stores them in a special memory area and reuses them. 3️⃣ equals() vs == • equals() → compares the actual content of two strings • == → compares memory references (whether both variables point to the same object) 💻 Challenge I practiced today: Reverse a String using charAt() method. Example logic: String str = "Java"; String reversed = ""; for (int i = str.length() - 1; i >= 0; i--) { reversed += str.charAt(i); } System.out.println(reversed); Small concepts like these build strong Java fundamentals. Consistency is key in this 100 Days of Code journey 🚀 #Java #CoreJava #JavaLearning #Strings #Programming #DeveloperJourney #100DaysOfCode
To view or add a comment, sign in
-
-
Deep Dive into Core Java Concepts 🚀 Today, I explored some important Java concepts including toString(), static members, and method behavior in inheritance. 🔹 The toString() method (from Object class) is used to represent an object in a readable format. By default, it returns "ClassName@hashcode", but by overriding it, we can display meaningful information. 🔹 Understanding static in Java: ✔️ Static variables and methods are inherited ❌ Static methods cannot be overridden ✔️ Static methods can be hidden (method hiding) 🔹 What is Method Hiding? If a subclass defines a static method with the same name and parameters as the parent class, it is called method hiding, not overriding. 🔹 Key Difference: ➡️ Overriding → applies to instance methods (runtime polymorphism) ➡️ Method Hiding → applies to static methods (compile-time behavior) 🔹 Also revised execution flow: ➡️ Static blocks (Parent → Child) ➡️ Instance blocks (Parent → Child) ➡️ Constructors (Parent → Child) This learning helped me clearly understand how Java handles inheritance, memory, and method behavior internally. Continuing to strengthen my Core Java fundamentals 💻🔥 #Java #OOP #CoreJava #Programming #LearningJourney #Coding
To view or add a comment, sign in
-
-
🚀 Java Method Arguments: Pass by Value vs Pass by Reference Ever wondered why Java behaves differently when passing primitives vs objects to methods? 🤔 This infographic breaks it down clearly: ✅ Pass by Value – When you pass a primitive, Java sends a copy of the value. The original variable stays unchanged. ✅ Objects in Java (Copy of Reference) – When you pass an object, Java sends a copy of the reference. You can modify the object’s data, but the reference itself cannot point to a new object. 💡 Why it matters: Prevent bugs when modifying data inside methods Understand how Java handles variables and objects under the hood 🔥 Fun Fact: Even objects are passed by value of reference! Java is always pass by value – whether it’s a primitive or an object. #Java #Programming #CodingTips #JavaDeveloper #SoftwareEngineering #LinkedInLearning #CodeBetter
To view or add a comment, sign in
-
-
Understanding == vs .equals() in Java 🔍 As I start sharing on LinkedIn, I thought I'd kick things off with a fundamental Java concept that often trips up developers: the difference between == and .equals() **The == Operator:** → Compares memory addresses (reference equality) → Checks if two references point to the exact same object → Works for primitives by comparing actual values **The .equals() Method:** → Compares the actual content of objects → Can be overridden to define custom equality logic → Default implementation in Object class uses == (unless overridden) Here's a practical example: String str1 = new String("Java"); String str2 = new String("Java"); str1 == str2 → false (different objects in memory) str1.equals(str2) → true (same content) **Key Takeaway:** Use == for primitives and reference comparison. Use .equals() when you need to compare the actual content of objects. This fundamental concept becomes crucial when working with Collections, String operations, and custom objects in enterprise applications. What other Java fundamentals would you like me to cover? Drop your suggestions in the comments. #Java #Programming #SoftwareDevelopment #BackendDevelopment #CodingTips #JavaDeveloper
To view or add a comment, sign in
-
-
Hi everyone 👋 Continuing the weekend Java Keyword Series with another important keyword 👇 📌 Java Keyword Series – Part 3 Today let’s understand one of the most important multithreading keywords in Java 👇 🔐 synchronized Keyword in Java The synchronized keyword is used to control thread access to shared resources. It ensures: - Mutual Exclusion (Only one thread at a time) - Visibility of changes - Thread Safety 🔹 Why Do We Need synchronized? In multithreading, multiple threads may try to access or modify the same object. Example problem: class Counter { int count = 0; public void increment() { count++; } } If two threads call increment() simultaneously, the result may be incorrect. Because count++ is NOT atomic. 🔹 Solution Using synchronized class Counter { int count = 0; public synchronized void increment() { count++; } } Now: - Only one thread can execute increment() at a time - Other threads must wait 🔹 How Does It Work Internally? Every object in Java has a monitor lock. When a thread enters a synchronized method/block: - It acquires the object’s lock - Other threads must wait - Lock is released when method finishes 🔹 In Simple Words synchronized ensures that only one thread at a time can access a critical section of code. #Java #Multithreading #Synchronized #CoreJava #InterviewPreparation #BackendDeveloper
To view or add a comment, sign in
-
There is quiet change in Java that every Java Developer should know about👀 I still remember the first Java program I ever wrote like every beginner, I memorized this line like a ritual : `public static void main(String[] args)` But here’s the surprising part In modern Java (21+), you can now write: void main() { System.out.println("Hello World"); } Yes… no `static`. 😮 So what actually changed? **Old JVM behaviour** When a Java program starts: 1️⃣ JVM loads the class 2️⃣ No objects exist yet 3️⃣ JVM looks for a method it can call directly Since non-static methods need an object, Java forced us to use a static `main()`. That’s why we all memorized that signature. But in Modern JVM behavior (Java 21 → 25) JVM quietly does this behind the scenes: ```java new Main().main(); ``` It creates the object and calls the method for you. This change actually pushes Java closer to being more object-oriented, because now your program can start from an instance method instead of a static one. Next time, let’s discuss a fun debate Why Java is still NOT a 100% Object-Oriented language. Did you know this change already happened? #Java #Programming #JVM #SoftwareEngineering #Developers
To view or add a comment, sign in
-
-
Text Block simple example In this post under Java Core, I will introduce you to newly added "Text Block" feature. This feature was added as part of Java 15. Pre Java 15, if we have to declare a multiline string we used to declare it as shown below String result = "Since Java 15, text blocks are \n" + "available as a standard feature.\n" + "With Java 13 and 14, \n" + "we needed to enable it as a preview feature.";...
To view or add a comment, sign in
-
🚀 Learning Core Java – Understanding Constructors in Java Today I explored an important concept in Java — Constructors. A constructor is a special block of code used to initialize objects. It is automatically executed when an object is created. ⸻ 🔹 Types of Constructors 1️⃣ Zero-Parameterized (No-Argument) Constructor A constructor that does not take any parameters. 2️⃣ Parameterized Constructor A constructor that accepts parameters to initialize instance variables with specific values. ⸻ 🔎 Important Rules of Constructors ✔ The constructor name must be exactly the same as the class name. ✔ A constructor has no return type (not even void). ✔ It is automatically called during object creation. ✔ If no constructor is declared, the Java compiler automatically provides a default constructor. ✔ Constructors can be overloaded (multiple constructors with different parameters). ✔ Constructors cannot be overridden because they are not inherited. ✔ Constructors cannot be declared as static. ⸻ 💡 Key Insight Constructors ensure that an object starts its life in a valid and properly initialized state. Understanding constructors is essential for building well-structured and reliable Java applications. Excited to keep strengthening my Core Java fundamentals! 🚀 #CoreJava #JavaProgramming #Constructors #ObjectOrientedProgramming #JavaDeveloper #ProgrammingFundamentals #LearningJourney #SoftwareEngineering
To view or add a comment, sign in
-
-
✅ Java Features – Step 22: Java 8 → Java 17 Recap 🚀 Over the past few posts, I’ve been revisiting some key Java features introduced from Java 8 to Java 17. A quick recap of the highlights: 🔹 Java 8 Streams API Optional Functional Interfaces Lambda Expressions 🔹 Java 9–11 Factory methods (List.of, Set.of, Map.of) var for local variable type inference New String methods (isBlank, strip, repeat) Modern HttpClient API 🔹 Java 14–15 Switch expressions Text blocks 🔹 Java 16–17 Records Sealed classes Pattern matching for instanceof Key takeaway Java has evolved significantly to: Reduce boilerplate Improve readability Support modern programming patterns Understanding these features helps write cleaner and more maintainable backend code. Next up: Practical examples of modern Java features in real backend applications ⚙️
To view or add a comment, sign in
-
🚀 Java Series – Day 17 📌 File Handling in Java (I/O) 🔹 What is it? File handling in Java allows us to read from and write to files using input and output streams. 🔹 Why do we use it? It helps in storing and retrieving data from external sources like text files, logs, or configuration files. For example: In a real-world application, we use file handling to store user data, logs, or system configurations. 🔹 Example: import java.io.*; public class Main { public static void main(String[] args) { try { BufferedReader reader = new BufferedReader(new FileReader("test.txt")); String data = reader.readLine(); System.out.println("Read: " + data); reader.close(); } catch (IOException e) { System.out.println(e.getMessage()); } } } 💡 Key Takeaway: File handling is essential for data persistence and real-world application development. What do you think about this? 👇 #Java #JavaIO #FileHandling #JavaDeveloper #Programming #BackendDevelopment
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