Signup as a Tutor

As a tutor you can connect with more than a million students and grow your network.

"Java Reflection in Detail" is no longer available

No Reviews Yet

Course type: Online Instructor led Course

Course ID: 11269

Course type: Online Instructor led Course

No Reviews Yet

About the Course

Java Reflection is often a confusing subject. the new comers to Java often feel it is difficult to understand. I will explain you the Reflection with simple example

Topics Covered

Java Reflection

A few basics
Reflection’s value proposition
Enter George the programmer
Choosing reflection ? Programming a reflective solution
Examining running programs
Finding a method at runtime
Representing types with class objects
Representing primitive types ? Representing interfaces
Representing array types
Understanding method objects
Using dynamic invocation ? Using primitives with dynamic
invocation ? Avoiding invocation pitfalls
Diagramming for reflection
Navigating the inheritance hierarchy
Introspecting the inheritance hierarchy ? Exposing some
surprises ? Another reflective circularity

Accessing fields reflectively
Serializing objects
Serializing to XML ? Choosing reflection
Designing serialization with reflection
Finding fields at runtime
Understanding field objects
Getting and setting field values
Examining modifiers
Introducing Member ? Interface introspection pitfall
Introspecting for instance variables
Accessing nonpublic members
Working with arrays
Serialization: putting it all together
Serializing each component ? Serializing instance variables
Using reflective serialization

Dynamic loading and reflective construction
George’s deployment problem
Designing with patterns ? Programming a reflective solution
Enhancing the factory method with reflection ? Combining
benefits of delegation and reflection
Loading classes dynamically
Basics of forName ? Getting array classes
Primitives and forName
Constructing objects reflectively
Reflective construction basics ? Using constructor objects
Constructing arrays reflectively
Designing for dynamic loading
Disadvantages of reflective construction with arguments
Initializing through an interface
Implementing deserialization
Initiating deserialization ? Constructing the instances
Restoring the object structure
George’s serialization: limitations
No interaction with readObject or writeObject ? No handling of
final instance variables ? Only no-argument constructors
No handling of illegal XML characters ? Performance

Using Java’s dynamic proxy
Working with proxies
George’s tracing problem
Exploring Proxy
Understanding invocation handlers
Handling the methods of Object
Implementing a tracing proxy
A note on factories
Chaining proxies
Structuring invocation handlers for chaining ? Implementing
a synchronized proxy ? Chaining the two proxies
Stubbing interfaces for unit testing
Examining stubs ? Design for stubbing with Proxy
Implementation of stubbing with Proxy
Generating SOAP remote proxies
Pitfalls of using Proxy

Call stack introspection
George’s logging problem
Performing call stack introspection
Logging with call stack introspection
Class invariant checking

Using the class loader
George’s test problem
Essentials of ClassLoader
Understanding the delegation model ? Programming a simple
class loader ? Reinitializing static fields: a solution
Multiple namespaces
Dynamic class replacement
Designing for replacement ? Implementing replacement
Simplifying assumptions
Additional considerations
Security ? Don’t reinvent the wheel ? Modifying bytecode in a
class loader ? When not to invent a specialized class loader
Additional examples ? Endorsed Standards Override

Reflective code generation
Reflective code generation
Generating HelloWorldjava
Class-to-class transformation framework
CC ? Args ? CCConstructor
Example: extent management
CIdentitySubclassOfC and its subclasses
Using the framework
Relation to Aspect-Oriented Programming

Design patterns
Decorator class-to-class transformations
Proxy (again)
Another composition feature
Problematic issues in writing
class-to-class transformations

Evaluating performance
Evaluating performance
Categorizing performance impact
Using microbenchmarks
Benchmarking two ways to use Proxy
Understanding Amdahl’s Law
Applying Amdahl’s Law

Reflecting on the future
Looking forward: Java
JSR —Generics ? JSR —Annotation Facility
JSR —Language extensions
Impact of Java on reflective code
competition for Java reflection
C# ? Python ? Smalltalk ? CLOS
Ruby ? Perl
Aspect-Oriented Programming
your career

Who should attend

Any body who has some java knowledge


Basic Java Knowledge

What you need to bring

if you want i can take online training or you can come to my place or i can come to your place if you are in chennai

Key Takeaways

Java Reflection E-Books, PPT's, Sample Programs. Exercise

Date and Time

Not decided yet.

About the Trainer

Sabareesan picture

4.8 Avg Rating

5 Reviews

8 Students

7 Courses



12 Years of Experience

I have 11 years experience in IT Training and development. I am a Corporate Trainer. Used to take training in software companies. I am having much experience in Java.


No reviews currently Be the First to Review


Post your requirement and let us connect you with best possible matches for Computer Software Classes Post your requirement now is India's largest network of most trusted tutors and institutes. Over 25 lakh students rely on, to fulfill their learning requirements across 1,000+ categories. Using, parents, and students can compare multiple Tutors and Institutes and choose the one that best suits their requirements. More than 6.5 lakh verified Tutors and Institutes are helping millions of students every day and growing their tutoring business on Whether you are looking for a tutor to learn mathematics, a German language trainer to brush up your German language skills or an institute to upgrade your IT skills, we have got the best selection of Tutors and Training Institutes for you. Read more