
- Java Tutorial
- Java - Home
- Java - Overview
- Java - Environment Setup
- Java - Basic Syntax
- Java - Object & Classes
- Java - Constructors
- Java - Basic Datatypes
- Java - Variable Types
- Java - Modifier Types
- Java - Basic Operators
- Java - Loop Control
- Java - Decision Making
- Java - Numbers
- Java - Characters
- Java - Strings
- Java - Arrays
- Java - Date & Time
- Java - Regular Expressions
- Java - Methods
- Java - Files and I/O
- Java - Exceptions
- Java - Inner classes
- Java Object Oriented
- Java - Inheritance
- Java - Overriding
- Java - Polymorphism
- Java - Abstraction
- Java - Encapsulation
- Java - Interfaces
- Java - Packages
- Java Advanced
- Java - Data Structures
- Java - Collections
- Java - Generics
- Java - Serialization
- Java - Networking
- Java - Sending Email
- Java - Multithreading
- Java - Applet Basics
- Java - Documentation
- Java Useful Resources
- Java - Questions and Answers
- Java - Quick Guide
- Java - Useful Resources
- Java - Discussion
- Java - Examples
How can we use a diamond operator with anonymous classes in Java 9?
The diamond operator has introduced in Java 7 to make code more readable, and it can't be used for anonymous inner classes. In Java 9, the diamond operator can be used with an anonymous inner class to improve the readability of code.
In Java 9, we can use the diamond <> operator in anonymous classes as below:
Example
public class DiamondOperatorTest { public static void main(String args[]) { Handler<Integer> intHandler = new Handler<>(1) { @Override public void handle() { System.out.println(data); } }; intHandler.handle(); Handler<? extends Number> intHandler1 = new Handler<>(2) { @Override public void handle() { System.out.println(data); } }; intHandler1.handle(); Handler<?> handler = new Handler<>("test") { @Override public void handle() { System.out.println(data); } }; handler.handle(); } } abstract class Handler<T> { public T data; public Handler(T data) { this.data = data; } abstract void handle(); }
Output
1 2 test
- Related Articles
- Can a diamond operator be used with an anonymous inner class in Java 9?
- How do we use equivalence (“equality”) operator in Python classes?
- How are anonymous (inner) classes used in Java?
- What are anonymous inner classes in Java?
- When can we use StackWalker.getCallerClass() method in Java 9?
- Anonymous classes in C++
- PHP Anonymous classes
- Can we use private methods in an interface in Java 9?
- How many types of anonymous inner classes are defined in Java?
- How can we use MySQL UNION operator on datasets?
- How can we use Python Ternary Operator Without else?
- How can we display all modules with classloaders in Java 9?
- Anonymous classes in PHP 7?
- Can we use Comparator with list in Java?
- How can we use lambda expressions with functional interfaces in Java?

Advertisements