0% found this document useful (0 votes)
7K views

Core Java Content NareshIT

This document provides an overview of topics related to Java programming including: - Java features, data types, variables, operators, control structures, methods, arrays - Object-oriented programming concepts like classes, objects, inheritance, polymorphism - Strings, wrappers, exceptions - Input/output, packages, multithreading, garbage collection - Java Virtual Machine architecture and reflection API - Working with Java IDEs like Eclipse, IntelliJ and developing Java programs.

Uploaded by

Nitesh Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7K views

Core Java Content NareshIT

This document provides an overview of topics related to Java programming including: - Java features, data types, variables, operators, control structures, methods, arrays - Object-oriented programming concepts like classes, objects, inheritance, polymorphism - Strings, wrappers, exceptions - Input/output, packages, multithreading, garbage collection - Java Virtual Machine architecture and reflection API - Working with Java IDEs like Eclipse, IntelliJ and developing Java programs.

Uploaded by

Nitesh Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

An ISO 9001 : 2015 Certified Company

Opp. Satyam Theatre, Durga Bhavani Plaza, Ameerpet, Hyd-16

Programming Languages Structure of Java Program


• Low Level Programming Language • Documentation Section
• High Level Programming Language • Package Statement
• Procedural Vs object oriented programming • Import statements
Introduction to Java • Class definition
• Java Programming Language First Java Program
• Java History • Writing
• Java Platforms • Saving
• Java Features • Compilation
• Java Versions • Execution
• JDK ,JRE, JVM, JIT • Working with JShell
• What is OpenJDK/AdaptJDK Literals
• Differences between JDK and OpenJDK • Numeric Literals
• Which one preferred by industry either o Integer, Floating-point
JDK/OpenJDK • Character Literals
Java Features/Character Set of Java • Boolean Literals
Comments & Java Tokens – Identifiers, Keywords, • String Literals
Separators • null literal
• Naming rules for Identifiers Variables & Data Types
• Naming conventions • Primitive Data Types
• Reference Types
Installation of JDK on all operating systems • Local Variables
• Download JDK and Install JDK Type Conversions
• Windows 32&64bit • Auto Conversion/Widening/implicit conversion
• Linux 32&64bit • Casting/narrowing/explicit conversion
• Mac 32&64bit Operators
• AIX (optional) • Arithmetic Operators
• Environment Variables
• Increment/ Decrement Operators
• Version Checking • Assignment Operators
• Relational Operators • Design Patterns
• Negation Operator • Case Study
• Bitwise Complement Operator JVM Architecture
• Logical Operators • Java Runtime Environment
• Bitwise Operators • Memory Areas of JVM
• Shift Operators • Class Loaders
• Conditional Operator • Execution Engine – Interpreter & JIT
• new Operator Reflection API
• instance of Operator • Reflection in Java
• Operators Precedence • Classes in java.lang.reflect
• Operators Associativity • Methods of java.lang.Class
• Numeric Type Promotions • Getting Complete information of a Java class
Reading Data from Keyboard • Access Private constructor from outside of a class
• Using Scanner class
• Getting different Primitive data Static member execution flow
Control Structures Non-Static/Instance member execution flow
• Decision Making Statements – if, if..else, nested if, Abstraction
ladder if, switch • Abstract Methods
• Repetitive Statements – while, do...while, for, o Abstract class, Class Vs Abstract Class
labelled loops • Interfaces
• Branching Statements – break, continue, return o Multiple Inheritance using Interfaces
Methods o Interface Vs Abstract class
• Method Syntax o default and static methods in Interface
• Zero Parameters Method o public & private static methods in
• Methods with Parameters Interface
• Method Returns Void • Marker Interface
• Method Returns Value o Functional Interface
• Overloading Methods o Anonymous Class
• In-out implementation • Lambda Expressions
Arrays • Method reference
• Single Dimensional Arrays • Reference to a static method
• Enhanced for loop • Reference to a instance method
• Multi Dimensional Arrays • Reference to a constructor
• Jagged Arrays • Abstract class with constructor and its importance
• Variable Arguments (Var-Args) • Case Study
• Method Passing Arrays Inner Classes
• Method returns Array • Nested Top Level/ Static Inner Class
• Case Study • Member Classes
Command-line Arguments • Local Classes
Working with Java IDEs • Anonymous Class
• Eclipse Packages
• Netbeans IDE • Need of Packages
• Intellij IDE o Built-in Packages
• Creating Project with IDE o rt.jar and Java Modules
• Debugging a Java Program o Preparation of JAR file and How to run it.
Object Oriented Programming o Uses of JAR files
• Introduction • User-defined Packages
• Procedure Oriented Vs Object Oriented Approach o Package naming rules
• Class & Object o Importing packages
• Java Modifiers o Sub-Packages
o Access Modifiers o classpath Environment Variable
o Non Access Modifiers o Static Imports
• Encapsulation String Handling
• Getter & Setters • String
• Instance & Class Variables • StringBuffer
• Instance & Class Methods • StringBuilder
• Constructors • String Vs StringBuffer
• Blocks • StringBuffer Vs StringBuilder
• Overloading Constructors • StringJoiner
• this keyword • Immutablitiy
• Constructor Vs Method • Creating Immutable class
• Passing & Returning Object from Method • StringTokenizer
• Inheritance • String Pool with memory management
• Method Overriding Wrapper Classes
• super keyword • Need of Wrapper Classes
• Super Constructors • List of Wrapper Classes
• Polymorphism • Wrapper Class Methods
• Static Binding Vs Dynamic Binding • Boxing & UnBoxing
• Relationships • Auto Widening
• Object Cloning – Shallow & Deep • Widening beats Boxing
• Widening beats Varargs • synchronized method
• Boxing beats Varargs • synchronized block
Exception Handling • static synchronization
• What is Exception • Inter-thread Communication
o Exception Propagation • Interrupting Thread
o Hierarchy of Exception classes Garbage Collection
o Exception Types • How Automatic Garbage Collection Works
o Exception Vs Error • Old Generation , Eden Space
o Checked Vs Unchecked Exceptions • Mark,Sweep and Compact Operations
o Keywords used for Exception Handling – • Different Garbage Collectors
try, catch, finally, throw, throws • Which Garbage collector we need to use?
• try with catch • finalize() of java.lang.Object
o try with multiple catch blocks • Object class methods
o Nested try blocks • Usage of equals and hash code method
o finally block • System.gc()
• User-defined / Custom Exceptions • Runnable.gc()
o throw statement • How to increase java heap size ?
• throws keyword • Runtime class
• throw Vs throws Enum
• Method Overriding with Exception Handling • Enums
• “try” with multiple resources • enum in switch
• Adding logic for try block with parameter • values() and valueOf( ) method
• Chained Exceptions • Enum field , methods and constructors
o Multicatch in Java Generics
o try with resources • Generics
IO Streams • Advantage of Java Generics
• Streams in Java • Generic Class
• Working with jav.io.File • Type Parameters
• Byte Streams • Generic Methods
• Input Streams & Output Streams • Wildcard in Generics
• Character Streams Collections Framework
• Readers & Writers • Limitations of Array
• Serialization & De-serialization, SerialCersionUID • Introduction to Collections
variable • Collection Interfaces
• Externalization • List Interfaces
• transient Modifier • Set Interfaces
• nio package • Queue Interfaces
• Log files creation • List Implementation Classes – ArrayList, Vector,
Multithreading with Executor Framework Stack, LinkedList
• Multitasking • Cursors in Collection –
• What is Thread? Iterator<E>,listIterator<E>,enumeration<E>,split
• Multithreading erator<T>
• Main Thread • Set Implementations Classes – HashSet,
• Lifecycle of a Thread LinkedHashSet, TreeSet,EnumSet
• Creating Child Threads • Queue Implementaion Classes – ArrayDeque,
• implements Runnable Vs extends Thread PriorityQueue
• Thread Priorities • Comparable Interface
• Thread class method to pause thread execution • Comparator Interface
o yield() • Comparable Vs Comparator
o sleep() • Map Interface
o join() o Map Implementation Classes – HashMap,
o wait() & notify() LinkedHashMap, IdentityHashMap,
o interrupt() to interrupt thread pause WeakHashMap, Hashtable,
• Daemon Threads TreeMap,EnumMap
• Thread Synchronization • Internal Implementation of HashMap
• Deadlock & Prevention of Deadlock • Arrays Class
• Deadlock Vs Starvation • Concurrent Collection API
• Inter Thread Communication o Traditional Collections Vs Concurrent
• Thread Pooling Collections
• Thread Group • Collections Factory Methods
• Concurrent linked queue • Need to override hashCode() and equals()
• ShutdownHook • Preparation customized linkedlist/ implementation
• Executor Framework of LinkedList code?
• CountdownLatch/cyclic barrier • Differences between HashMap and
• Semaphore ConcurrentHashMap
• Exchanger Java Stream API
• Performing multiple task by multiple thread • Advantages of using Stream API
• ThreadDump (Only Overview) • Stream Interface methods – forEach, map, filter,
Synchronization : limit, sorted
• What and Why? • Parallel Processing – Collectors & Statistics
• Predefined Functional Interfaces – Consumer, • The Local Variable Type Inference
Function, Predicate • Time-Based Release Versioning
• Optional Class • Garbage-Collector Interface
Utility Classes • Parallel Full GC for G1
• StringTokenizer • Heap Allocation on Alternative Memory Devices
• Date, Calendar, Currency classes • JDK Forest into a Single Repository
• Formatting Date and Time • Unicode Language-Tag Extensions
• Locale, Formatter, Random classes • Root Certificates
• Timer & TimerTask Classes • Thread-Local Handshakes
• Date/Time API • Experimental Java-Based JIT Compiler
Regular Expressions • Application Class-Data Sharing
• Use of Regular Expression • API Changes(Additions and Removals etc)
• java.util.regex package Java 11 Features:
Networking • New String methods(isBlank, lines, repeatetc).
• Introduction • New File methods
• InetAddress (Writestring,readstring,isSameFile)
• Socket Programming • Pattern recognizing methods
• Datagrams • Epsilon Garbage Collector
• URL & URLConnection • Removed the Java EE / CORBA module and
Annotations Thread Functions
• Use of Annotations • Local-Variable Syntax for Lambda Parameters
• Type of Annotations • TimeUnit Conversion
• Built-in Java Annotations • Optional.isEmpty()
• Custom Annotations • Adapt JDK and Open JDK vs Oracle JDK
GUI Programming Changes Overview
• AWT Java 12 Features:
• Swings JVM Changes
• Java FX • JEP 189 – Shenandoah: A Low-Pause-Time
• APPLETS Garbage Collector (Experimental)
Java 8 Features: • JEP 346 – Promptly Return Unused Committed
• Lambda Expressions Memory from G1
• Marker and Functional Interfaces • JEP 344 - Abortable Mixed Collections for G1
• Pipelines and Streams Switch Expressions
• Date and Time API • The new Syntax removes the need for break
• Default Methods statement to prevent fallthroughs.
• Type Annotations • Switch Expressions don’t fall through anymore.
• Nashorn JavaScript Engine • Furthermore, we can define multiple constants in
• Concurrent Accumulators the same label.
• Parallel operations • default case is now compulsory in Switch
• Predicate Expressions.
• PermGen Space Removed • break is used in Switch Expressions to return
• TLS SNI values from a case itself.
Java9 Features: File mismatch() Method
• The Java Platform module system • If the bytes are not identical. In this case, the
• Dynamic Linking position of the first mismatching byte is returned.
• JShell: the interactive Java REP • File sizes are not identical. In this case, the size of
• Improved Javadoc the smaller file is returned.
• Collection factory methodsFactory Methods for Compact Number Formatting
Immutable List, Set, Map and Map.Entry Teeing Collectors in Stream API
• Stream API improvements • Teeing Collector is the new collector utility
• Private interface methods introduced in the Streams API.
• HTTP/2 • This collector has three arguments – Two
• Multi-release JARs collectors and a Bi-function.
• Multi-Resolution Image API Java Strings New Methods
• CompletableFuture API Improvements • indent(),transform()
• Diamond Operator for Anonymous Inner Class • Optional describeConstable()
• Miscallenous • String resolveConstantDesc()
o GC (Garbage Collector) Improvements JVM Constants API
o Stack-Walking API • A new package java.lang.constant is introduced
o Filter Incoming Serialization Data with this JEP.
o Deprecate the Applet API JEP 305: Pattern Matching for instanceof
o Indify String Concatenation Raw String Literals is removed from JDK 12.
o Enhanced Method Handles Java 13 Features:
o Java Platform Logging API and Service • Enhancements for Switch Expressions
o Compact Strings • Text Blocks instead of Raw String Literals
o Parser API for Nashorn • Dynamic CDS Archives
• ZGC returns unused storage
Java10 Features: • Renewed Socket API

You might also like