
Compare unstructured and structured programming languages, highlighting early first-generation basics, the limitations of goto-based flow, lack of functions, and the benefits of structured languages with high-level syntax and reusable code.
Compare structural and object oriented programming languages, highlighting how object oriented languages like Java offer modularization, abstraction, security, shareability, and reusability over C's structure.
Define a class as a blueprint and virtual encapsulation of common properties and behaviors. Define an object as a real instance with its own physical properties and behaviors.
Explore encapsulation and abstraction as core features in Java, comparing class and object, and see how private data with getters/setters and hiding details via interfaces and abstract classes enhance security.
Explore inheritance in Java to reuse common fields and methods across subclasses, using a superclass like employee and subclasses manager and accountant to enhance code reusability and reduce duplication.
Explore how polymorphism lets a single entity exist in multiple forms, enabling flexible design with static (compile-time) and dynamic (runtime) polymorphism, including overloading and overriding as examples.
Explore the meaning of message passing in java, where data flows through method calls with parameters and returns data between classes and objects, enhancing communication between entities and data navigation.
Explore how Java uses containers and classes to model entities with attributes and behaviors, and master class syntax, including extends, implements, and interface relationships.
Explore Java access modifiers and their scope across classes and packages, covering public, protected, default, and private, plus how they determine visibility within the same class, package, and external classes.
Explore access modifiers in Java, noting top-level classes can be public or default while private and protected are not, and examine inner class visibility with all modifiers.
Learn which access modifiers are allowed for top-level and inner classes in Java, and how final, abstract, static, and strictfp influence class and member accessibility.
Learn how to define classes in Java using class, className, and the extends and implements keywords, and why Java restricts to a single superclass while supporting interfaces.
Learn which Java class syntaxes are valid or invalid, including access modifiers and common keywords. Understand how inheritance and interfaces shape class definitions.
Declare a Java class with the class keyword, define variables and methods, and instantiate objects in a main method to display employee details; place main in a separate class.
Explain how a Java class is loaded and an employee object is created in heap memory, with fields like name, year, email, and mobile, then displayed using concatenation.
Learn how to declare multiple classes in a single Java application, create objects, and access class members to display student and customer details.
Explore the differences between concrete and abstract methods in Java, covering declarations, implementations, and how they work in classes, abstract classes, and interfaces.
Learn about abstract classes in Java: declare with abstract, combine concrete and abstract methods, declare variables, implement abstract methods in a subclass, and access via references rather than object creation.
Explore how abstract classes in Java define concrete and abstract methods, distinguish reference variables from subclass instances, and compare abstract versus concrete classes.
Explore how Java interfaces declare abstract methods with the interface keyword, define public static final variables, and why implementation classes provide method bodies while interfaces cannot be instantiated.
Declare interfaces in Java, define public static final variables and abstract methods, and implement them in a class using implements. Understand how interface and implementation references access interface members.
Compare classes, abstract classes, and interfaces in Java, detailing concrete vs abstract methods, object creation limits, and default variable modifiers. Note Java 9 introduces private interface methods.
Explore the purpose and syntax of Java methods, including access modifiers, return types, and parameters, and see how methods model actions like deposit, withdraw, and transfer for entity behavior.
Explore how Java method modifiers work, including public, private, and default access, plus static, final, abstract, synchronized, native, and strictfp, with valid and invalid combinations.
Explore the difference between method signature and method prototype, showing how a signature specifies a method's name and parameters while a prototype includes full syntax, modifiers, return type, and exceptions.
Explore mutator methods and accessor methods in Java, see how mutators modify object data while accessors retrieve it, and learn about setters, getters, and Java bean classes.
Explore how mutator methods modify an object's data and how accessor methods retrieve it, using a Java bean with private fields and an employee example.
Explore mutator and accessor methods in Java, showing how private fields are updated by setters and retrieved by getters to achieve encapsulation.
Learn to access a method by passing a variable number of parameters with the variable argument method in Java, where three dots turn args into an array.
Create objects in Java with the syntax className ref = new ClassName(params) using a constructor; objects support Java's object oriented design, store temporary data, and allow access to class members.
This lecture explains how Java loads class bytecode into the method area, creates a class object in heap with metadata, and launches a main thread to run the main method.
Launch object creation with the new keyword and constructor as the JVM loads class bytecode, allocates heap memory, assigns a unique object identity, and links a reference variable during initialization.
Explore the Java object creation process: memory allocation, identity generation, and value initialization via constructors and class-level steps.
Explore hashCode and toString in Java, illustrating how to obtain object values and reference values, the role of the Object class, and the distinction between single and multi-level inheritance.
Learn the difference between immutable and mutable objects in Java, see how string objects are immutable while StringBuffer supports mutation, and how concatenation differs from append.
Understand why string objects are immutable and other class objects are mutable. Concatenation creates new string objects rather than modifying the original.
Learn to build a user defined immutable class in Java by using a final class, private final fields, and getters, with modifications via new objects as in the calculator example.
Learn how an object is a memory block and an instance is a snapshot of its data at a moment. See how one object yields instances as state changes occur.
Learn how constructors initialize objects at creation time in Java, assign values to class and instance variables, with names matching the class and no return type, differentiating them from methods.
Explore how Java constructors must mirror the class name, why renaming a constructor makes it a method, and which modifiers (like static or private) affect constructor behavior and accessibility.
Understand default constructors in Java. The compiler provides a no-argument constructor if none is defined; defining a constructor prevents this automatic generation, and you can use parameterized constructors.
Explore user defined constructors in Java, including default and parameterized forms, how explicit constructors replace compiler defaults, and how to initialize bank account fields.
Learn how constructors initialize objects in Java, compare default and parameterized constructors, and set initial data at creation to avoid using set methods.
learn how parameterized constructors let you pass unique account data at object creation and assign values to class fields, ensuring each account has its own data and unique account numbers.
Explore user defined constructors in Java, learn how parameter values initialize class fields by transferring from local parameters to object attributes, and understand stack and heap memory during object creation.
Explore constructor overloading in Java, defining multiple constructors with different parameter lists to initialize objects differently. The lecture also explains method overloading with the same name but different parameters.
The instance variable is a variable whose values vary from one object to another. It is declared at the class level and stored in the heap with the object.
Explore instance methods in Java, learning how methods represent object actions, trigger execution on call, and how constructors and variable initialization occur during object creation.
Learn how instance blocks and instance variable initialization run before constructors in Java, and how their execution order affects object creation and program output.
Observe the instance flow of execution in Java by creating two objects, inspecting constructor and block initialization, and noting that the class bytecode is loaded only once.
Learn how this keyword refers to the current class variables, methods, constructors, and objects in Java, and how it resolves local versus class level variables across the object's hierarchy.
Explore how the this keyword refers to current class variables, distinguish between local and class level variables, and implement setters and getters in a Java bean.
Learn how the this keyword refers to the current class object and accesses current class methods in Java, including calling them with or without creating an object.
Explore how the this keyword refers to the current class and its constructors, enabling constructor chaining and overloading across multiple parameter lists.
Demonstrates using the this keyword to return the current class object, ensuring the same reference is returned on repeated calls and avoiding new object creation.
Explore the static keyword in Java, focusing on static variables, their class-level scope, access via class name or object, single shared copy, and loading memory where the class bytecode resides.
Learn how the static variable in Java provides a single shared copy across all objects, unlike instance variables that are per object; understand bytecode loading once and memory areas.
Explore how static variables initialize at load time and are shared. Contrast: instance variables initialize per object and require an object to access, unlike static context via class name.
Static methods are normal java methods executed when called. Access them via the class name or an object; they use only static variables and methods.
Static methods in Java are recognized and executed at load time and runtime, access only static members, and cannot use this; instance methods access both static and non-static members.
Explore how static variables and a static method can print text without a main method, and how Java versions six, seven, and eight affect behavior and no such method error.
Learn that static blocks execute at class loading and access only static members; for non-static members, create an object and use its reference.
Investigate displaying text without main, static variables, or static methods. Note that in Java six, a static block can run, but from Java seven onward main is mandatory.
Explore printing text without a main method using a static anonymous inner class, compare Java 6 and Java 7 behavior, and conclude the approach is invalid in modern Java.
Discover how static import in Java lets you access static members of a class without class names or references, with syntax examples and comparisons to normal imports.
Examine the static context in Java with blocks, variables, and methods. Learn how class loading initializes static members and triggers execution when blocks load or methods are accessed.
Explore how the static context governs initialization and execution in Java: static blocks, static variables, and static methods load once per class, while constructors run per object.
Explore how static context executes at class load time, with static blocks, variables, and methods, versus instance context that runs during object creation and constructor execution.
Benefits of this course:
---------------------------
1. This Course will provide completeness on every topic.
2. This Course will make you to Strong on Theoretically and Pro grammatically.
3. This Course will provide Good Platform for the Advanced Technologies and Frameworks like Jdbc, Servlets, Jsps, Hibernate, JPA, Spring,..
4. This Course includes almost all the interview Questions and Answers as part of the Course internally.
5. This Course will provide Downloadable Material for all the above specified topics.
Syllabus:
----------
Object Oriented Programming(OOPs):
------------------------------------
1. OOPS Introduction : Unstructered Vs Structered Programming Languages
2. OOPS Introduction : Structered Vs Object Oriented Programming Languages
3. OOPS Introduction : Aspect Oriented Programming Languages
4. OOPS Features : Object Based Vs Object Oriented Programming Languages
5. OOPS Features : Class Vs Object
6. OOPS Features : Encapsulation Vs Abstraction
7. OOPS Features : Inheritance
8. OOPS Features : Polymorphism
9. OOPS Features : Message Passing
10.OOPS Containers : Class : Syntax
11.OOPS Containers : Class : Access Modifiers Part-1
12.OOPS Containers : Class : Access Modifiers Part-2
13.OOPS Containers : Class : Access Modifiers Part-3
14.OOPS Containers : Class : class, className, extends, implements keywords
15.OOPS Containers : Class : Possible Syntaxes of Classes
16.OOPS Containers : Class : Procedure to use classes in Java
17.OOPS Containers : Class : Internal flow in Class Utilization
18.OOPS Containers : Class : More than one class in Single Java Appl
19.OOPS Containers : Concrete Methods Vs Abstract Methods
20.OOPS : Containers: Abstract Classes Part-1
21.OOPS : Containers: Abstract Classes Part-2
22.OOPS : Containers: Interfaces Part-1
23.OOPS : Containers: Interfaces Part-2
24.OOPS : Containers: Interfaces Part-3
25.OOPS : Methods In Java : Method Syntax Part-1
26.OOPS : Methods In Java : Method Syntax Part-2
27.OOPS : Methods In Java : Method Syntax Part-3
28.OOPS : Methods In Java : Method Signature and Prototype
29.OOPS : Methods In Java : Var-Arg Method Part-1
30.OOPS : Methods in Java : Var-Arg Method Part-2
31.OOPS : Procedure To Create Objects Part-1
32.OOPS : Procedure To Create Objects Part-2
33.OOPS : Procedure To Create Objects Part-3
34.OOPS : Procedure To Create Objects Part-4
35.OOPS : hashCode() and toString() methods Part-1
36.OOPS : hashCode() and toString() methods Part-2
37.OOPS : Immutable Objects Vs Mutable Objects Part-1
38.OOPS : Immutable Objects Vs Mutable Objects Part-2
39.OOPS : User defined Immutable Class
40.OOPS : Object Vs Instance
41.OOPS : Constructors : Introduction Part-1
42.OOPS : Constructors : Introduction Part-2
43.OOPS : Constructors : Default Constructor
44.OOPS : Constructors : User Defined Constructors Part-1
45.OOPS : Constructors : User Defined Constructors Part-2
46.OOPS : Constructors : User Defined Constructors Part-3
47.OOPS : Constructors : User Defined Constructors Part-4
48.OOPS : Constructors : Constructor Overloading
49.OOPS : Instance Context : Instance Variable
50.OOPS : Instance Context : Instance Methods
51.OOPS : Instance Context : Instance Block and Instance Flow
52.OOPS : Instance Context : Instance Instance Flow
53.OOPS : 'this' keyword : To refer current class Variables Part-1
54.OOPS : 'this' keyword : To refer current class Variables Part-2
55.OOPS : 'this' keyword : To refer current class Methods
56.OOPS : 'this' keyword : To refer current class Constructors Part-1
57.OOPS : 'this' keyword : To refer current class Constructors Part-2
58.OOPS : 'this' keyword : To return current class Object
59.OOPS : 'static' keyword: Static Variable Part-1
60.OOPS : 'static' keyword: Static Variable Part-2
61.OOPS : 'static' keyword: Static Variable Part-3
62.OOPS : 'static' keyword: Static Variable Part-4
63.OOPS : 'static' keyword: Static Method Part-1
64.OOPS : 'static' keyword: Static Method Part-2
65.OOPS : 'static' keyword: Static Method Part-3
66.OOPS : 'static' keyword: Static Block Part-1
67.OOPS : 'static' keyword: Static Block Part-2
68.OOPS : 'static' keyword: Static Anonymous Inner class
69.OOPS : 'static' keyword: Static Import
70.OOPS : 'static' keyword: Static Context Part-1
71.OOPS : 'static' keyword: Static Context Part-2
72.OOPS : 'static' keyword: Static Context and Instance Context Part-1
73.OOPS : 'static' keyword: Static Context and Instance Context Part-2
74.OOPS : Class.forName() method internal functionality
75.OOPS : newInstance() method internal functionality
76.OOPS : Utilizations of Class.forName() and newInstance() methods
77.OOPS : Factory Methods
78.OOPS : Singleton classes Part - 1
79.OOPS : Singleton classes Part-2
80.OOPS : final keyword : final variable
81.OOPS : final keyword : final methods and final classes
82.OOPS : 'public static final' Convension for constant variables
83.OOPS : enum keyword part-1
84.OOPS : enum Keyword Part-2
85.OOPS : enum keyword Part-3
86.OOPS : main() method : Introduction
87.OOPS : main() method : Why 'public' is required
88.OOPS : main() method : Why 'static' is required
89.OOPS : main() method : Why 'void' is required
90.OOPS : main() method : Why 'parameter' is required
91.OOPS : main() method : Why 'String[]' as parameter is required
92.OOPS : main() method : List of valid and Invalid Syntaxes of main() method
93.OOPS : main() method : More than one main() in Single Java Application
94.OOPS : main() method : main() method Overloading and Overriding
95.OOPS : main() method : main() method in Inheritance
96.OOPS : Relationships in Java: Introduction
97.OOPS : Relationships in Java: Associations: One-To-One Association through Constructor Dependency Injection
98.OOPS : Relationships in Java: Associations: One-To-One Association through setter method Dependency Injection Part-1
99.OOPS : Relationships in Java: Associations: One-To-One Association through setter method Dependency Injection Part-2
100.OOPS : Relationships in Java: Associations: One-To-Many Association through Constructor Dependency Injection
101.OOPS : Relationships : Associations : One-To-Many Association through setter Dependency Injection
102.OOPS : Relationships : Associations : One-To-Many Association Internal Data Representation
103.OOPS : Relationships in Java: Associations: Many-To-One Association through Constructor Dependency Injection
104.OOPS : Relationships in Java: Associations: Many-To-One Association through setter Dependency Injection
105.OOPS : Relationships in Java: Associations: Many-To-Many Association through Constructor Dependency Injection
106.OOPS : Relationships in Java : Associations : Many-To-Many Association through Setter Method Dependency InjectionPart-1
107.OOPS : Relationships in Java : Associations : Many-To-Many Association through Setter Method Dependency Injection Part-2
108.OOPS : Relationships in Java : Associations : Composition Vs Aggregation
109.OOPS : Relationships in Java : Inheritance : Introduction Part-1
110.OOPS : Relationships in Java : Inheritance : Introduction Part-2
111.OOPS : Relationships in Java : Inheritance : Types of Inheritance Part-1
112.OOPS : Relationships in Java : Inheritance : Types of Inheritance Part-2
113.OOPS : Relationships in Java : Inheritance : Types of Inheritance Part-3
114.OOPS : Relationships in Java : Inheritance : Types of Inheritance Part-4
115.OOPS : Relationships in Java : Inheritance : Static Context in Inheritance Part-1
116.OOPS : Relationships in Java : Inheritance : Static Context in Inheritance Part-2
117.OOPS : Relationships in Java : Inheritance : Instance Context in Inheritance Part-1
118.OOPS : Relationships in Java : Inheritance : Instance Context in Inheritance Part-2
119.OOPS : Relationships in Java : Inheritance : Instance Context in Inheritance Part-3
120.OOPS : Relationships in Java : Inheritance : Static Context and Instance Context Mix in Inheritance Part-1
121.OOPS : Relationships in Java : Inheritance : Static Context and Instance Context Mix in Inheritance Part-2
122.OOPS : Relationships in Java : Inheritance : Super Keyword Part- 1
123.OOPS : Relationships in Java : Inheritance : Super Keyword Part-2
124.OOPS : Relationships in Java : Inheritance : Super Keyword Part-3
125.OOPS : Relationships in Java : Inheritance : Super Keyword Part-4
126.OOPS : Relationships in Java : Inheritance : Super Keyword Part-5
127.OOPS : Relationships in Java : Inheritance : Super Keyword Part-6
128.OOPS : Relationships in Java : Inheritance : Class Level Type Casting: Upcasting Part-1
129.OOPS : Relationships in Java : Inheritance : Class Level Type Casting: Upcasting Part-2
130.OOPS : Relationships in Java : Inheritance : Class Level Type Casting: Downcasting Part-1
131.OOPS : Relationships in Java : Inheritance : Class Level Type Casting: Downcasting Part-2
132.OOPS : Relationships in Java : USES-A Relationship
133.OOPS : Polymorphism : Introduction
134.OOPS : Polymorphism : Method Overloading Part-1
135.OOPS : Polymorphism : Method Overloading Part-2
136.OOPS : Polymorphism : Method Overloading Part-3
137.OOPS : Polymorphism : Method Overriding Part-1
138.OOPS : Polymorphism : Method Overriding Part-2
139.OOPS : Polymorphism : Method Overriding Part-3
140.OOPS : Polymorphism : Method Overriding Part-4
141.OOPS : Polymorphism : Method Overriding Part-5
142.OOPS : Polymorphism : Rules and Regulations for Method Overriding Part-1
143.OOPS : Polymorphism : Rules and Regulations for Method Overriding Part-2
144.OOPS : Polymorphism : Rules and Regulations for Method Overriding Part-3
145.OOPS : Polymorphism : Rules and Regulations for Method Overriding Part-4
146.OOPS : Polymorphism : Rules and Regulations for Method Overriding Part-5
147.OOPS : Polymorphism : Rules and Regulations for Method Overriding Part-6
148.OOPS : Abstract Methods and Abstract classes Introduction
149.OOPS : Concrete Method Vs Abstract Method
150.OOPS : Concreate class Vs Abstract Class
151.OOPS : Abstract Class Part-1
152.OOPS : Abstract Class Part-2
153.OOPS : Abstract Class Part-3
154.OOPS : Abstract Class Part-4
155.OOPS : Abstract Class Part-5
156.OOPS : Interfaces Part-1
157.OOPS : Interfaces Part-2
158.OOPS : Interfaces Part-3
159.OOPS : Interfaces Part-4
160.OOPS : Interfaces Part-5
161.OOPS : Interfaces Part-6
162.OOPS : Interfaces Part-7
163.OOPS : Syntaxes between classes, abstract classes and Interfaces Part-1
164.OOPS : Syntaxes between classes, abstract classes and Interfaces Part-2
165.OOPS : Syntaxes between classes, abstract classes and Interfaces Part-3
166.OOPS : Differences between classes, abstract classes and Interfaces
167.OOPS : Marker Interfaces : Serializable
168.OOPS : Marker Interfaces : Cloneable
169.OOPS : Adapter Classes Part-1
170.OOPS : Adapter Classes Part-2
171.OOPS : Adapter Classes Part-3
172.OOPS : Object Cloning: Introduction Part-1
173.OOPS : Object Cloning: Introduction Part-2
174.OOPS : Object Cloning: Introduction Part-3
175.OOPS : Object Cloning: Shallow Cloning Part-1
176.OOPS : Object Cloning: Shallow Cloning Part-2
177.OOPS : Object Cloning: Deep Cloning Part-1
178.OOPS : Object Cloning: Deep Cloning Part-2
179.OOPS : instanceof Operator Part-1
180.OOPS : instanceof Operator Part-2