🚀 Day 1 of My Java Journey Today, I started learning the fundamentals of Java and understood some very important basic concepts. 🔹What is Java? It is a programming language is used to create an application. 🔹What is a Program? It is just an instruction which is used to create an application. For example: WhatsApp 1.____________________ ->program / instruction / code 2.____________________ ->program / instruction / code 3.____________________ ->program / instruction / code 4. ____________________ ->program / instruction / code 5.____________________ ->program / instruction / code 🔹What is a Programming Language? • A language which is used to write a program is called as programming language. • We are having programming languages such as Java, Python, C, C#, Ruby, Pearl, R etc.. 🔹What is an Application? It is a collection of programs is called as application. For example: FaceBook 1.____________________ ->program / instruction / code 2.____________________ ->program / instruction / code 3.____________________ ->program / instruction / code 4. ____________________ ->program / instruction / code 5.____________________ ->program / instruction / code 🔹Types Of Application: • Standalone Application • Web Application • Client-Server Application Grateful for the clear guidance and support from my trainer Syed Tabrez at Qsipders Vadapalani. #Day1 #Java #ProgrammingLanguage #Application #LearningJourney #SoftwareDeveloper #AspiringSoftwareDeveloper #QspidersVadapalani
Java Fundamentals: Understanding Programs and Applications
More Relevant Posts
-
I learned a surprising Java concept. Two Java keywords exist… But we can’t actually use them. They are: • goto • const Both are reserved keywords in Java. But if you try to use them, the compiler throws an error. So why do they exist? Let’s start with goto. In older languages like C and C++, goto allowed jumping to another part of the code. Sounds powerful, right? But it often created messy and confusing programs — commonly called “spaghetti code.” When Java was designed, the creators decided to avoid this problem completely. Instead of goto, Java encourages structured control flow using: break continue return This makes programs easier to read and maintain. Now the second keyword: const. In languages like C/C++, const is used to declare variables whose value cannot change. Java handles this differently using the final keyword. Example: final int x = 10; Once declared final, the value cannot be modified. And here’s the interesting part Java kept goto and const as reserved words so developers cannot accidentally use them as identifiers. Sometimes the smartest design decision in a programming language is what it chooses NOT to include. Learning programming isn’t just about syntax. It’s about understanding why the language was designed this way. A special thanks to my mentor Syed Zabi Ulla for explaining programming concepts with such clarity and always encouraging deeper understanding rather than just memorizing syntax. #Java #Programming #Coding #LearnToCode #DeveloperJourney
To view or add a comment, sign in
-
-
🚀 Day 13— Restarting My Java Journey with Consistency Today's Learnings: 🔹 Instance Variables & Instance Methods These belong to objects and are accessed using the object reference. They help define the state and behavior of objects. 🔹 Local Variables Local variables do not get default values in Java. They must be initialized before use, otherwise the compiler throws an error. 🔹 Constructors in Java Constructors are special methods used to initialize objects at the time of creation. No return type Same name as class Example: Student s1 = new Student(); When an object is created, the constructor is automatically invoked to initialize the object. Types of constructors : • Default Constructor – No parameters • Parameterized Constructor – Accepts values to initialize object fields Important rule: If a programmer defines any constructor, Java does not create a default constructor automatically. 🔹 this Keyword this refers to the current object. It is commonly used to distinguish instance variables from local variables. 🔹 Constructor Overloading A class can have multiple constructors with different parameter lists to initialize objects in different ways. 🔹 Constructor Chaining Using this() we can call one constructor from another constructor within the same class. Important rule: The this() call must be the first statement inside a constructor. Interview Specific: 🔹 Can We Call a Constructor Manually? No. Constructors cannot be called like normal methods. They are automatically invoked when an object is created using the new keyword. 🔹 Interesting Runtime Insight When we create an object using new, Java allocates memory in the heap at runtime. But what if heap does not have enough free space, then Java will throw a runtime exception. Learning daily with Coder Army and Aditya Tandon Bhaiya and Rohit Negi Bhaiya #Day13 #Java #Consistency #BackendDevelopment #LearningJourney #SoftwareEngineering #CoderArmy
To view or add a comment, sign in
-
-
🚀 Java Series – Day 14 📌 Abstract Class vs Interface in Java 🔹 What is it? Both Abstract Classes and Interfaces are used to achieve abstraction in Java, but they are used in different scenarios. An Abstract Class can have: • Abstract methods (without body) • Concrete methods (with implementation) • Instance variables and constructors An Interface mainly contains: • Abstract methods (by default) • Constants (public static final) • Supports multiple inheritance 🔹 Why do we use it? We choose between them based on the requirement: • Use Abstract Class when classes share common code and state • Use Interface when we want to define a contract that multiple classes can implement For example: In a payment system, an abstract class can provide common logic like logging, while an interface defines methods like "pay()" for different payment types. 🔹 Example: abstract class Animal { void eat() { System.out.println("Animal eats food"); } abstract void sound(); } interface Pet { void play(); } class Dog extends Animal implements Pet { void sound() { System.out.println("Dog barks"); } public void play() { System.out.println("Dog plays"); } } public class Main { public static void main(String[] args) { Dog d = new Dog(); d.eat(); d.sound(); d.play(); } } 💡 Key Takeaway: Use abstract classes for shared behavior and interfaces for defining contracts and achieving multiple inheritance. What do you think about this? 👇 #Java #OOP #Abstraction #JavaDeveloper #Programming #BackendDevelopment
To view or add a comment, sign in
-
💻 Understanding Buffer Problem & Wrapper Classes in Java While working with Java input using scanner, many beginners face a tricky issue called the Buffer Problem when using Scanner. What happens? --->>When you use nextInt() or nextFloat(), it reads only the number and leaves the newline (\n) in the buffer. --->>So the next nextLine() gets skipped unexpectedly! ~Quick Fix: Always clear the buffer: int n = scan.nextInt(); scan.nextLine(); // clear buffer String name = scan.nextLine(); 🔄 Wrapper Classes in Java Java provides Wrapper Classes to convert primitive data types into objects. @Examples: int → Integer float → Float char → Character #These are super useful when: ✔ Converting String → primitive ✔ Working with collections (like ArrayList) ✔ Using built-in utility methods 🌍 Real-Time Example Imagine a job application system: User input: 101,John,50000 **To process this** 👇 String[] data = input.split(","); int id = Integer.parseInt(data[0]); String name = data[1]; int salary = Integer.parseInt(data[2]); Here, Wrapper Classes help convert text into usable data types. #Key Takeaways ✔ Always clear buffer when mixing nextInt() & nextLine() ✔ Wrapper classes make data conversion easy ✔ Essential for real-world input handling & backend systems #Mastering these small concepts builds a strong foundation in Java! TAP Academy #Java #Programming #OOP #JavaDeveloper #Coding #SoftwareDevelopment #LearnJava
To view or add a comment, sign in
-
-
Understanding Java Memory: Stack vs. Heap 🧠 Ever wondered what actually happens behind the scenes when you write Student s1 = new Student(); ? To write memory-efficient code and truly understand Garbage Collection, you have to look under the hood at how Java manages memory. Here’s the breakdown: 🔹 The Stack: The "Where" Stores local variables and references to objects. The variable s1 doesn't actually hold the "Student"—it holds the memory address (the pointer). Stack memory is fast, automatic, and managed in a Last-In-First-Out (LIFO) order. 🔹 The Heap: The "What" This is where the actual Object lives. When you use the new keyword, Java carves out space in the Heap for the object’s data (like id and name). The Heap is much larger than the Stack and is where the Garbage Collector does its magic. 💡 Key Takeaway: If s1 is set to null or goes out of scope, the object in the Heap loses its "link" to the Stack. Once an object has no references pointing to it, it becomes eligible for Garbage Collection! What's a Java concept you found hardest to visualize when starting out? Let’s discuss in the comments! 👇 #Java #Programming #SoftwareDevelopment #ObjectOrientedProgramming
To view or add a comment, sign in
-
-
📂 Deep Dive into FileInputStream & FileOutputStream (Java) Today I explored Java File Handling more deeply, focusing on FileInputStream and FileOutputStream, which are part of the Byte Stream API in Java. Understanding how data actually moves between RAM and the Hard Disk is an important concept when working with files, streams, and data processing. 🔹 FileOutputStream – Writing Data to a File FileOutputStream is used when we want to transfer data from the program (RAM) to a file stored on the hard disk. Key points: • It belongs to Byte Streams • Works with 8-bit data (bytes) • The write(int) method writes only one byte at a time • When writing text like a String, it must first be converted into a byte array 📌 Conceptual Flow RAM → Byte Array → FileOutputStream → File (Hard Disk) 🔹 FileInputStream – Reading Data from a File FileInputStream is used to read data from a file and bring it into the program memory. Key points: • Reads data byte by byte • The read() method returns data in the form of an integer • Since the value represents a byte, it is usually typecast into a character for display or processing 📌 Conceptual Flow File (Hard Disk) → FileInputStream → Program (RAM) 💡 Key Learning Working with byte streams helped me understand how Java internally handles low-level file operations, where data flows as bytes between memory and storage. This concept becomes very important when dealing with: • Binary files • Image or media processing • Serialization • Network streams Continuing to explore deeper concepts in Java I/O and backend fundamentals. 🚀 A special thanks to my trainer Prasoon Bidua at REGex Software Services for sharing such deep insights and explaining these concepts so clearly during the class. #Java #JavaIO #FileHandling #BackendDevelopment #Programming #LearningInPublic
To view or add a comment, sign in
-
-
Day 22 – Reference Variables in Java Today I explored an important concept in Object-Oriented Programming — Reference Variables. Unlike primitive variables, reference variables store the address of an object, not the actual value. 🔹 What is a Reference Variable? A reference variable is a non-primitive variable that refers to an object created from a class. It is declared using the class name. Syntax: ClassName referenceVariable; Initialization- referenceVariable = new ClassName(); Or both together: ClassName referenceVariable = new ClassName(); Here: ClassName → Name of the class referenceVariable → Object reference new → Keyword used to create an object ClassName() → Constructor 🔹 Example class Demo5 { int x = 100; int y = 200; } class MainClass3 { public static void main(String[] args) { Demo5 d1 = new Demo5(); System.out.println("x = " + d1.x); System.out.println("y = " + d1.y); System.out.println("modifying x & y"); d1.x = 300; d1.y = 400; System.out.println("x = " + d1.x); System.out.println("y = " + d1.y); } } Output: x = 100 y = 200 modifying x & y x = 300 y = 400 🔹 Important Observation When we write: Demo5 d1 = new Demo5(); Java performs three things: 1️⃣ Creates a reference variable (d1) 2️⃣ Creates a new object in memory 3️⃣ Stores the object reference in the variable #Java #CoreJava #JavaFullStack #OOP #Programming #BackendDevelopment #LearningInPublic #SoftwareDevelopment
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
-
-
🚨throw vs throws in Java - One Letter, Completely Different Meaning When I first started learning Java, two keywords confused me a lot: throw & throws They look almost identical... but they do very different things. Let's break it down simply👇 💠throw - Used to actually throw an exception -> Used within methods to explicitly raise an exception instance, allowing one checked or unchecked exception at a time. 🧩Example: if(age < 18){ throw new IllegalArgumentException("Age must be 18 or above"); } Here, the program immediately throws an exception. 💠throws - Used to declare possible exceptions -> Used in method signatures to declare one or more potential checked exceptions, signaling to the caller that the exception must be handled. 🧩Example: public void readFile() throws IOException { FileReader file = new FileReader("data.txt"); } This method itself does not handle the exception - it passes responsibilty to the caller. 🧠Simple way to remember throw->used inside a method (creates) throws->used in method declaration (warns) 💡Understanding this difference helps to: ✅Write cleaner APIs ✅Handle errors properly ✅Make the code easier for others to use. 💬 Quick question for Java developers here: Which exception confused you the most when you were starting out? NullPointerException still haunts many developers 😅 #Java #ExceptionHandling #JavaDeveloper #BackendDevelopment #Programming #SoftwareEngineering #LearningInPublic
To view or add a comment, sign in
-
-
I just completed an intensive session focused on the core of Java's efficiency: Immutable Strings and Memory Management. While we often use strings daily, understanding what happens under the hood is what separates a coder from a developer. Key Takeaways from the session: The Power of Command Line Arguments: We explored how the String[] args in the main method actually functions, learning how to pass dynamic data into applications via the CLI—a crucial skill for building professional-grade tools . Strings as Objects: In Java, strings aren't just data; they are objects . I learned the three distinct ways to initialize them: using the new keyword, using string literals, and converting character arrays . Memory Architecture (SCP vs. Heap): This was a game-changer. I now understand that Java optimizes memory by using the String Constant Pool (SCP) for literals to prevent duplicates, while the Heap Area allows for duplicate objects when the new keyword is used . The Comparison Trap: I finally mastered the difference between reference comparison and value comparison. Using == compares the memory address (reference), while the .equals() method compares the actual content . Immutability: We began exploring why certain data, like birthdays or names, are best handled as immutable strings—meaning they cannot be changed once created in memory . I'm looking forward to the next phase of this journey: Object-Oriented Programming (OOP)! . #Java #SoftwareDevelopment #Programming #MemoryManagement #TechLearning #JavaDeveloper #CodingJourney #Tapacadmey
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