Java Programming Notes: Basic to Advanced
Java Programming Notes: Basic to Advanced
Here's a comprehensive guide to Java programming, from basic to advanced topics, explained step by step with suitable examples. Please note that this is a condensed version, and each topic can be explored in much greater detail.
Java Programming Notes: Basic to Advanced
Basic Concepts:
1. Introduction to Java:
Java is a high-level, object-oriented programming language developed by Sun Microsystems. It is platform-independent and designed to be easy to use and write once, run anywhere (WORA).
2. Setting Up Java Development Environment:
Download and install JDK (Java Development Kit).
Set up environment variables (PATH, JAVA_HOME) to run Java programs from the command line.
3. Basic Syntax:
Java program structure: class, methods, and statements.
Data types: int, float, double, char, boolean.
Variables and Constants.
Operators: arithmetic, logical, relational.
Control flow: if-else, switch, loops (for, while).
Example:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Object-Oriented Programming (OOP):
1. Classes and Objects:
- Class declaration and instantiation.
- Constructors and methods.
- Access modifiers: public, private, protected.
- Encapsulation and data hiding.
Example:
class Car {
private String model;
public Car(String modelName) {
model = modelName;
}
public void displayModel() {
System.out.println("Model: " + model);
}
}
2. Inheritance:
- Extending classes.
- Method overriding.
- Super keyword.
Example:
class SportsCar extends Car {
public SportsCar(String modelName) {
super(modelName);
}
// Overriding the displayModel() method
@Override
public void displayModel() {
System.out.println("Sports Car Model: " + model);
}
}
3. Polymorphism:
- Method overloading.
- Interfaces and abstract classes.
Example:
interface Shape {
double calculateArea();
}
class Circle implements Shape {
private double radius;
public Circle(double r) {
radius = r;
}
@Override
public double calculateArea() {
return Math.PI * radius * radius;
}
}
Advanced Concepts:
1. Exception Handling:
try, catch, finally blocks.
Custom exceptions.
Example:
public class CustomExceptionExample {
public static void main(String[] args) {
try {
throw new CustomException("This is a custom exception.");
} catch (CustomException e) {
System.out.println(e.getMessage());
}
}
}
class CustomException extends Exception {
public CustomException(String message) {
super(message);
}
}
2. File Handling:
Reading and writing files.
File classes: FileReader, FileWriter, BufferedReader, BufferedWriter.
Example:
import java.io.*;
public class FileHandlingExample {
public static void main(String[] args) {
try {
FileWriter writer = new FileWriter("output.txt");
writer.write("Hello, File Handling!");
writer.close();
FileReader reader = new FileReader("output.txt");
BufferedReader bufferedReader = new BufferedReader(reader);
String line = bufferedReader.readLine();
System.out.println(line);
bufferedReader.close();
} catch (IOException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
}
}
3. Multithreading:
- Creating and running threads.
- Synchronization.
- Thread lifecycle.
Example:
public class MultithreadingExample {
public static void main(String[] args) {
Thread thread1 = new Thread(new MyRunnable());
Thread thread2 = new Thread(new MyRunnable());
thread1.start();
thread2.start();
}
}
class MyRunnable implements Runnable {
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println("Thread ID: " + Thread.currentThread().getId() + ", Count: " + i);
}
}
}
This is a basic overview of Java programming, covering fundamental and advanced concepts. Remember, the best way to learn is by practicing and experimenting with code. Happy coding!
No comments: