SlideShare a Scribd company logo
Java 7
came with
super power
agenda :
>   what is new in literals?
>   switch case with string
>   diamond operator in collections
>   improved exception handling
>   automatic resource management
>   new features in nio api
>   join&forks in threads
>   swing enhancements
>   dynamic-typed languages
>   proposal for etrali
>   queries ..?




      JAVA 7                     2
what is new in literals?

 numeric literals with underscore:

underscore is allowed only for the numeric.
underscore is used identifying the numeric value.

For example:
1000 will be declared as int amount = 1_000.
Then with 1million? How easy it will to understand?




   JAVA 7                       3
 binary literals for numeric:

in java6, numeric literal can declared as decimal & hexadecimal.
in java7, we can declare with binary value but it should start with “0b”
                                                                 New
for example:                                                     feature

> Int twelve = 12; // decimal
> int sixPlusSix = 0xC; //hexadecimal
> int fourTimesThree = 0b1100;.//Binary value




   JAVA 7                         4
switch case with string :

> if want the compare the string then we should use the if-else
> now in java7, we can use the switch to compare.

              JAVA6                                     JAVA7
Public void processTrade(Trade t) {       Public void processTrade(Trade t) {
String status = t.getStatus();            Switch (t.getStatus()) {
If (status.equals(“NEW”)                  Case NEW: newTrade(t);
    newTrade(t);                                      break;
Else if (status.equals(“EXECUTE”){        Case EXECUTE: executeTrader(t);
    executeTrade(t);                                 break;
Else                                      Default : pendingTrade(t);
    pendingTrade(t);                      }
}




   JAVA 7                             5
diamond operator in collections :

> java6, List<Trade> trader = new ArrayList<Trade>();
> Java7, List<Trade> trader = new ArrayList<>();

> How cool is that? You don't have to type the whole list of types for
  the instantiation. Instead you use the <> symbol, which is called
  diamond operator.

> Note that while not declaring the diamond operator is legal, as
  trades = new ArrayList(), it will make the compiler generate a
  couple of type-safety warnings.




   JAVA 7                        6
performance improved in collections :

> By using the Diamond operator it improve the performance
  increases compare to

> Performance between the JAVA5 to JAVA6 -- 15%

> Performance between the JAVA6 to JAVA7 -- 45% as be
                                             45%
  increased.

> this test percentage was given by ibm company.




   JAVA 7                      7
kicked
                                                   out
Improved exception handling :
> java 7 introduced multi-catch functionality to catch multiple
  exception types using a single catch block.
> the multiple exceptions are caught in one catch block by using a
  '|' operator.
> this way, you do not have to write dozens of exception catches.
> however, if you have bunch of exceptions that belong to different
  types, then you could use "multi -catch" blocks too.

 The following snippet illustrates this:
try {
              methodThatThrowsThreeExceptions();
     } catch (ExceptionOne e | ExceptionTwo | ExceptionThree e) {
          // log and deal with ExceptionTwo and ExceptionThree
}

   JAVA 7                       8
automatic resource management :
> resource such as the connection, files, input/output resource ect.,
  should be closed manually by developer.
> usually use try-finally block close the respective resource.
> in java7, the resource are closed automatically. By using the
  AutoCloseable interface .
> It will close resource the automatically when it come out of the try
  block need for the close resource by the developer.

try (FileOutputStream fos = new FileOutputStream("movies.txt");
         DataOutputStream dos = new DataOutputStream(fos)) {
         dos.writeUTF("Java 7 Block Buster");
  } catch (IOException e) {                                 no need to
            // log the exception                            close
                                                            resources
  }



  JAVA 7                        9
New input/output api [jsr-203] :

> the NIO 2.0 has come forward with many enhancements. It's also
  introduced new classes to ease the life of a developer when
  working with multiple file systems.

> a new java.nio.file package consists of classes and interfaces
  such as Path, Paths, FileSystem, FileSystems and others.

> File.delete(), files.deleteIfExists(path),file.move(..) & file.copy(..)
  to act on a file system efficiently.

> one of my favorite improvements in the JDK 7 release is the
  addition of File Change Notifications.


   JAVA 7                          10
> this has been a long-awaited feature that's finally carved into NIO
  2.0.
> the WatchService API lets you receive notification events upon
  changes to the subject (directory or file).

> the steps involved in implementing the API are:

1. create a WatchService. This service consists of a queue to hold
    WatchKeys
2. register the directory/file you wish to monitor with this
    WatchService
3. while registering, specify the types of events you wish to receive
    (create, modify or delete events)
4. you have to start an infinite loop to listen to events
5. when an event occurs, a WatchKey is placed into the queue
6. consume the WatchKey and invoke queries on it

   JAVA 7                        11
fork & join in thread [jsr-166] :

> What is concurrency?

> The fork-join framework allows you to distribute a certain task on
  several workers and when wait for the result.

> fork&join should extend the RecursiveAction. RecursiveAction is
  abstract class should implement the compute().

> forkJoinPool implements the core work-stealing algorithm and can
   execute forktasks.

> goal is to improve the performance of the application.


   JAVA 7                       12
dynamic-typed language[jsr-292] :

> supporting Dynamically Typed Languages on the Java
  Platform, which should ensure that dynamically typed languages
  run faster in the JVM than they did previously.

> languages like Ruby, or Groovy, will now execute on the JVM
  with performance at or close to that of native Java code

> what is static typed language?
> what is dynamic typed language?




   JAVA 7                     13
swing :

JLAYER:

> JLAYER class is a flexible & powerful decorator for swing
  components.

> It enables to draw on components & respond to component
  events without modifying the underlying component directly.




   JAVA 7                      14
java8

> Java8 [mid of 2013]
2. Language-level support for lambda expressions(->).
3. Closure [not yet confirmed]
4. Tight integration with JavaFX




                               15
Proposal for etrali on up gradation :

 what are the befits for Etrali ?
1. increasing the performance up to 20% to 50%
2. size of the code will be reduced
3. reduce heap space or memory leak exceptions
4. project life span will increase.

 what are the benefits for our organization ?
1. using the updated technologies
2. we will get some more working days on Etrali
3. profit on worked days




   JAVA 7                      16
sample code




         JDK7Samples.rar

               17
references :

> http://www.oracle.com/technetwork/articles/java/fork-
  join-422606.html
> http://docs.oracle.com/javase/tutorial/essential/concurrency/forkjo
  in.html
> http://docs.oracle.com/javase/7/docs
> http://geeknizer.com/java-7-whats-new-performance-
  benchmark-1-5-1-6-1-7/
> http://docs.oracle.com/javase/tutorial/uiswing/misc/jlayer.html
> http://rajakannappan.blogspot.in/2010/05/new-features-in-java-7-
  dolphin.html




   JAVA 7                       18
Queries




         ANY QUERIES ..?


JAVA 7            19
THANK YOU
         Thank you




Java 7
> Static typed programming languages are those in which variables
  need not be defined before they’re used. This implies that static
  typing has to do with the explicit declaration (or initialization) of
  variables before they’re employed. Java is an example of a static
  typed language; C and C++ are also static typed languages. Note
  that in C (and C++ also), variables can be cast into other types,
  but they don’t get converted; you just read them assuming they
  are another type.
> Static typing does not imply that you have to declare all the
  variables first, before you use them; variables maybe be
  initialized anywhere, but developers have to do so before they
  use those variables anywhere. Consider the following example:
> /* C code */
> static int num, sum; // explicit declaration
> num = 5; // now use the variables
   JAVA 7                          21
> sum = 10;
> http://www.sitepoint.com/typing-versus-dynamic-typing/
> Dynamic typed programming languages are those languages in
  which variables must necessarily be defined before they are
  used. This implies that dynamic typed languages do not require
  the explicit declaration of the variables before they’re used.
  Python is an example of a dynamic typed programming language,
  and so is PHP. Consider the following example:




   JAVA 7                     22
Ad

More Related Content

What's hot (20)

Project Coin
Project CoinProject Coin
Project Coin
Balamurugan Soundararajan
 
모던자바의 역습
모던자바의 역습모던자바의 역습
모던자바의 역습
DoHyun Jung
 
Java and OpenJDK: disecting the ecosystem
Java and OpenJDK: disecting the ecosystemJava and OpenJDK: disecting the ecosystem
Java and OpenJDK: disecting the ecosystem
Rafael Winterhalter
 
Jdk 7 4-forkjoin
Jdk 7 4-forkjoinJdk 7 4-forkjoin
Jdk 7 4-forkjoin
knight1128
 
Bytecode manipulation with Javassist and ASM
Bytecode manipulation with Javassist and ASMBytecode manipulation with Javassist and ASM
Bytecode manipulation with Javassist and ASM
ashleypuls
 
JVM
JVMJVM
JVM
Murali Pachiyappan
 
Spring AOP
Spring AOPSpring AOP
Spring AOP
Lhouceine OUHAMZA
 
The Java memory model made easy
The Java memory model made easyThe Java memory model made easy
The Java memory model made easy
Rafael Winterhalter
 
J2ee standards > CDI
J2ee standards > CDIJ2ee standards > CDI
J2ee standards > CDI
harinderpisces
 
Java EE 與 雲端運算的展望
Java EE 與 雲端運算的展望 Java EE 與 雲端運算的展望
Java EE 與 雲端運算的展望
javatwo2011
 
Java11 New Features
Java11 New FeaturesJava11 New Features
Java11 New Features
Haim Michael
 
Java 7 & 8 New Features
Java 7 & 8 New FeaturesJava 7 & 8 New Features
Java 7 & 8 New Features
Leandro Coutinho
 
Smart Migration to JDK 8
Smart Migration to JDK 8Smart Migration to JDK 8
Smart Migration to JDK 8
Geertjan Wielenga
 
Byte code field report
Byte code field reportByte code field report
Byte code field report
Rafael Winterhalter
 
02 Hibernate Introduction
02 Hibernate Introduction02 Hibernate Introduction
02 Hibernate Introduction
Ranjan Kumar
 
Jersey framework
Jersey frameworkJersey framework
Jersey framework
knight1128
 
The definitive guide to java agents
The definitive guide to java agentsThe definitive guide to java agents
The definitive guide to java agents
Rafael Winterhalter
 
Java Tut1
Java Tut1Java Tut1
Java Tut1
guest5c8bd1
 
Javatut1
Javatut1 Javatut1
Javatut1
desaigeeta
 
Advance Java Programs skeleton
Advance Java Programs skeletonAdvance Java Programs skeleton
Advance Java Programs skeleton
Iram Ramrajkar
 

Viewers also liked (8)

Siquar báo giá 2014
Siquar báo giá 2014Siquar báo giá 2014
Siquar báo giá 2014
Quang Cầu
 
DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...
DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...
DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...
Roberto Sorci
 
Moleskine redditi 2010
Moleskine redditi 2010Moleskine redditi 2010
Moleskine redditi 2010
Roberto Sorci
 
Green Booking Riviera Romagnola - Info Alberghi
Green Booking Riviera Romagnola - Info Alberghi Green Booking Riviera Romagnola - Info Alberghi
Green Booking Riviera Romagnola - Info Alberghi
Info Alberghi
 
Siquar báo giá 2014.1
Siquar báo giá 2014.1Siquar báo giá 2014.1
Siquar báo giá 2014.1
Quang Cầu
 
Presentazione analisi "tempi" procedimenti amministrativi comune Fabriano
Presentazione  analisi "tempi" procedimenti amministrativi comune FabrianoPresentazione  analisi "tempi" procedimenti amministrativi comune Fabriano
Presentazione analisi "tempi" procedimenti amministrativi comune Fabriano
Roberto Sorci
 
Sentenza Tar Marche per Nuova casa riposo da realizzare mediante P.F.
Sentenza Tar Marche per  Nuova casa  riposo da realizzare mediante P.F.Sentenza Tar Marche per  Nuova casa  riposo da realizzare mediante P.F.
Sentenza Tar Marche per Nuova casa riposo da realizzare mediante P.F.
Roberto Sorci
 
Hotel Web Marketing
Hotel Web MarketingHotel Web Marketing
Hotel Web Marketing
Info Alberghi
 
Siquar báo giá 2014
Siquar báo giá 2014Siquar báo giá 2014
Siquar báo giá 2014
Quang Cầu
 
DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...
DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...
DDL " disposizioni urgenti per ilrilancio dell'economia" un esempio di come n...
Roberto Sorci
 
Moleskine redditi 2010
Moleskine redditi 2010Moleskine redditi 2010
Moleskine redditi 2010
Roberto Sorci
 
Green Booking Riviera Romagnola - Info Alberghi
Green Booking Riviera Romagnola - Info Alberghi Green Booking Riviera Romagnola - Info Alberghi
Green Booking Riviera Romagnola - Info Alberghi
Info Alberghi
 
Siquar báo giá 2014.1
Siquar báo giá 2014.1Siquar báo giá 2014.1
Siquar báo giá 2014.1
Quang Cầu
 
Presentazione analisi "tempi" procedimenti amministrativi comune Fabriano
Presentazione  analisi "tempi" procedimenti amministrativi comune FabrianoPresentazione  analisi "tempi" procedimenti amministrativi comune Fabriano
Presentazione analisi "tempi" procedimenti amministrativi comune Fabriano
Roberto Sorci
 
Sentenza Tar Marche per Nuova casa riposo da realizzare mediante P.F.
Sentenza Tar Marche per  Nuova casa  riposo da realizzare mediante P.F.Sentenza Tar Marche per  Nuova casa  riposo da realizzare mediante P.F.
Sentenza Tar Marche per Nuova casa riposo da realizzare mediante P.F.
Roberto Sorci
 
Ad

Similar to Java7 (20)

Core Java introduction | Basics | free course
Core Java introduction | Basics | free course Core Java introduction | Basics | free course
Core Java introduction | Basics | free course
Kernel Training
 
Java 7 & 8
Java 7 & 8Java 7 & 8
Java 7 & 8
Ken Coenen
 
Software Uni Conf October 2014
Software Uni Conf October 2014Software Uni Conf October 2014
Software Uni Conf October 2014
Nayden Gochev
 
College Project - Java Disassembler - Description
College Project - Java Disassembler - DescriptionCollege Project - Java Disassembler - Description
College Project - Java Disassembler - Description
Ganesh Samarthyam
 
Java 8 Overview
Java 8 OverviewJava 8 Overview
Java 8 Overview
Nicola Pedot
 
Jsp and jstl
Jsp and jstlJsp and jstl
Jsp and jstl
vishal choudhary
 
brief introduction to core java programming.pptx
brief introduction to core java programming.pptxbrief introduction to core java programming.pptx
brief introduction to core java programming.pptx
ansariparveen06
 
Java programming basics
Java programming basicsJava programming basics
Java programming basics
Hamid Ghorbani
 
What is Java? Presentation On Introduction To Core Java By PSK Technologies
What is Java? Presentation On Introduction To Core Java By PSK TechnologiesWhat is Java? Presentation On Introduction To Core Java By PSK Technologies
What is Java? Presentation On Introduction To Core Java By PSK Technologies
PSK Technolgies Pvt. Ltd. IT Company Nagpur
 
Swift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for DevelopersSwift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for Developers
Azilen Technologies Pvt. Ltd.
 
Comprehensive JavaScript Cheat Sheet for Quick Reference and Mastery
Comprehensive JavaScript Cheat Sheet for Quick Reference and MasteryComprehensive JavaScript Cheat Sheet for Quick Reference and Mastery
Comprehensive JavaScript Cheat Sheet for Quick Reference and Mastery
pavanbackup22
 
JavaScript Cheatsheets with easy way .pdf
JavaScript Cheatsheets with easy way .pdfJavaScript Cheatsheets with easy way .pdf
JavaScript Cheatsheets with easy way .pdf
ranjanadeore1
 
Bt0074 oops with java2
Bt0074 oops with java2Bt0074 oops with java2
Bt0074 oops with java2
Techglyphs
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
Tajendar Arora
 
Java Servlets & JSP
Java Servlets & JSPJava Servlets & JSP
Java Servlets & JSP
Manjunatha RK
 
Java/Servlet/JSP/JDBC
Java/Servlet/JSP/JDBCJava/Servlet/JSP/JDBC
Java/Servlet/JSP/JDBC
FAKHRUN NISHA
 
Java tut1
Java tut1Java tut1
Java tut1
Sumit Tambe
 
Java tut1
Java tut1Java tut1
Java tut1
Sumit Tambe
 
Java tut1 Coderdojo Cahersiveen
Java tut1 Coderdojo CahersiveenJava tut1 Coderdojo Cahersiveen
Java tut1 Coderdojo Cahersiveen
Graham Royce
 
Java_Tutorial_Introduction_to_Core_java.ppt
Java_Tutorial_Introduction_to_Core_java.pptJava_Tutorial_Introduction_to_Core_java.ppt
Java_Tutorial_Introduction_to_Core_java.ppt
Govind Samleti
 
Core Java introduction | Basics | free course
Core Java introduction | Basics | free course Core Java introduction | Basics | free course
Core Java introduction | Basics | free course
Kernel Training
 
Software Uni Conf October 2014
Software Uni Conf October 2014Software Uni Conf October 2014
Software Uni Conf October 2014
Nayden Gochev
 
College Project - Java Disassembler - Description
College Project - Java Disassembler - DescriptionCollege Project - Java Disassembler - Description
College Project - Java Disassembler - Description
Ganesh Samarthyam
 
brief introduction to core java programming.pptx
brief introduction to core java programming.pptxbrief introduction to core java programming.pptx
brief introduction to core java programming.pptx
ansariparveen06
 
Java programming basics
Java programming basicsJava programming basics
Java programming basics
Hamid Ghorbani
 
Swift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for DevelopersSwift 2.0: Apple’s Advanced Programming Platform for Developers
Swift 2.0: Apple’s Advanced Programming Platform for Developers
Azilen Technologies Pvt. Ltd.
 
Comprehensive JavaScript Cheat Sheet for Quick Reference and Mastery
Comprehensive JavaScript Cheat Sheet for Quick Reference and MasteryComprehensive JavaScript Cheat Sheet for Quick Reference and Mastery
Comprehensive JavaScript Cheat Sheet for Quick Reference and Mastery
pavanbackup22
 
JavaScript Cheatsheets with easy way .pdf
JavaScript Cheatsheets with easy way .pdfJavaScript Cheatsheets with easy way .pdf
JavaScript Cheatsheets with easy way .pdf
ranjanadeore1
 
Bt0074 oops with java2
Bt0074 oops with java2Bt0074 oops with java2
Bt0074 oops with java2
Techglyphs
 
Java/Servlet/JSP/JDBC
Java/Servlet/JSP/JDBCJava/Servlet/JSP/JDBC
Java/Servlet/JSP/JDBC
FAKHRUN NISHA
 
Java tut1 Coderdojo Cahersiveen
Java tut1 Coderdojo CahersiveenJava tut1 Coderdojo Cahersiveen
Java tut1 Coderdojo Cahersiveen
Graham Royce
 
Java_Tutorial_Introduction_to_Core_java.ppt
Java_Tutorial_Introduction_to_Core_java.pptJava_Tutorial_Introduction_to_Core_java.ppt
Java_Tutorial_Introduction_to_Core_java.ppt
Govind Samleti
 
Ad

Recently uploaded (20)

To study the nervous system of insect.pptx
To study the nervous system of insect.pptxTo study the nervous system of insect.pptx
To study the nervous system of insect.pptx
Arshad Shaikh
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
New Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptxNew Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptx
milanasargsyan5
 
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdfExploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Sandeep Swamy
 
Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025
Mebane Rash
 
How to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POSHow to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POS
Celine George
 
Operations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdfOperations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdf
Arab Academy for Science, Technology and Maritime Transport
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulsepulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
sushreesangita003
 
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACYUNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
DR.PRISCILLA MARY J
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Library Association of Ireland
 
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Celine George
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
Political History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptxPolitical History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptx
Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...
Sandeep Swamy
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
Geography Sem II Unit 1C Correlation of Geography with other school subjects
Geography Sem II Unit 1C Correlation of Geography with other school subjectsGeography Sem II Unit 1C Correlation of Geography with other school subjects
Geography Sem II Unit 1C Correlation of Geography with other school subjects
ProfDrShaikhImran
 
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Library Association of Ireland
 
To study the nervous system of insect.pptx
To study the nervous system of insect.pptxTo study the nervous system of insect.pptx
To study the nervous system of insect.pptx
Arshad Shaikh
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
New Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptxNew Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptx
milanasargsyan5
 
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdfExploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Sandeep Swamy
 
Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025
Mebane Rash
 
How to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POSHow to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POS
Celine George
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulsepulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
sushreesangita003
 
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACYUNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
DR.PRISCILLA MARY J
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Library Association of Ireland
 
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Celine George
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...The ever evoilving world of science /7th class science curiosity /samyans aca...
The ever evoilving world of science /7th class science curiosity /samyans aca...
Sandeep Swamy
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
Geography Sem II Unit 1C Correlation of Geography with other school subjects
Geography Sem II Unit 1C Correlation of Geography with other school subjectsGeography Sem II Unit 1C Correlation of Geography with other school subjects
Geography Sem II Unit 1C Correlation of Geography with other school subjects
ProfDrShaikhImran
 
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Library Association of Ireland
 

Java7

  • 2. agenda : > what is new in literals? > switch case with string > diamond operator in collections > improved exception handling > automatic resource management > new features in nio api > join&forks in threads > swing enhancements > dynamic-typed languages > proposal for etrali > queries ..? JAVA 7 2
  • 3. what is new in literals?  numeric literals with underscore: underscore is allowed only for the numeric. underscore is used identifying the numeric value. For example: 1000 will be declared as int amount = 1_000. Then with 1million? How easy it will to understand? JAVA 7 3
  • 4.  binary literals for numeric: in java6, numeric literal can declared as decimal & hexadecimal. in java7, we can declare with binary value but it should start with “0b” New for example: feature > Int twelve = 12; // decimal > int sixPlusSix = 0xC; //hexadecimal > int fourTimesThree = 0b1100;.//Binary value JAVA 7 4
  • 5. switch case with string : > if want the compare the string then we should use the if-else > now in java7, we can use the switch to compare. JAVA6 JAVA7 Public void processTrade(Trade t) { Public void processTrade(Trade t) { String status = t.getStatus(); Switch (t.getStatus()) { If (status.equals(“NEW”) Case NEW: newTrade(t); newTrade(t); break; Else if (status.equals(“EXECUTE”){ Case EXECUTE: executeTrader(t); executeTrade(t); break; Else Default : pendingTrade(t); pendingTrade(t); } } JAVA 7 5
  • 6. diamond operator in collections : > java6, List<Trade> trader = new ArrayList<Trade>(); > Java7, List<Trade> trader = new ArrayList<>(); > How cool is that? You don't have to type the whole list of types for the instantiation. Instead you use the <> symbol, which is called diamond operator. > Note that while not declaring the diamond operator is legal, as trades = new ArrayList(), it will make the compiler generate a couple of type-safety warnings. JAVA 7 6
  • 7. performance improved in collections : > By using the Diamond operator it improve the performance increases compare to > Performance between the JAVA5 to JAVA6 -- 15% > Performance between the JAVA6 to JAVA7 -- 45% as be 45% increased. > this test percentage was given by ibm company. JAVA 7 7
  • 8. kicked out Improved exception handling : > java 7 introduced multi-catch functionality to catch multiple exception types using a single catch block. > the multiple exceptions are caught in one catch block by using a '|' operator. > this way, you do not have to write dozens of exception catches. > however, if you have bunch of exceptions that belong to different types, then you could use "multi -catch" blocks too. The following snippet illustrates this: try { methodThatThrowsThreeExceptions(); } catch (ExceptionOne e | ExceptionTwo | ExceptionThree e) { // log and deal with ExceptionTwo and ExceptionThree } JAVA 7 8
  • 9. automatic resource management : > resource such as the connection, files, input/output resource ect., should be closed manually by developer. > usually use try-finally block close the respective resource. > in java7, the resource are closed automatically. By using the AutoCloseable interface . > It will close resource the automatically when it come out of the try block need for the close resource by the developer. try (FileOutputStream fos = new FileOutputStream("movies.txt"); DataOutputStream dos = new DataOutputStream(fos)) { dos.writeUTF("Java 7 Block Buster"); } catch (IOException e) { no need to // log the exception close resources } JAVA 7 9
  • 10. New input/output api [jsr-203] : > the NIO 2.0 has come forward with many enhancements. It's also introduced new classes to ease the life of a developer when working with multiple file systems. > a new java.nio.file package consists of classes and interfaces such as Path, Paths, FileSystem, FileSystems and others. > File.delete(), files.deleteIfExists(path),file.move(..) & file.copy(..) to act on a file system efficiently. > one of my favorite improvements in the JDK 7 release is the addition of File Change Notifications. JAVA 7 10
  • 11. > this has been a long-awaited feature that's finally carved into NIO 2.0. > the WatchService API lets you receive notification events upon changes to the subject (directory or file). > the steps involved in implementing the API are: 1. create a WatchService. This service consists of a queue to hold WatchKeys 2. register the directory/file you wish to monitor with this WatchService 3. while registering, specify the types of events you wish to receive (create, modify or delete events) 4. you have to start an infinite loop to listen to events 5. when an event occurs, a WatchKey is placed into the queue 6. consume the WatchKey and invoke queries on it JAVA 7 11
  • 12. fork & join in thread [jsr-166] : > What is concurrency? > The fork-join framework allows you to distribute a certain task on several workers and when wait for the result. > fork&join should extend the RecursiveAction. RecursiveAction is abstract class should implement the compute(). > forkJoinPool implements the core work-stealing algorithm and can execute forktasks. > goal is to improve the performance of the application. JAVA 7 12
  • 13. dynamic-typed language[jsr-292] : > supporting Dynamically Typed Languages on the Java Platform, which should ensure that dynamically typed languages run faster in the JVM than they did previously. > languages like Ruby, or Groovy, will now execute on the JVM with performance at or close to that of native Java code > what is static typed language? > what is dynamic typed language? JAVA 7 13
  • 14. swing : JLAYER: > JLAYER class is a flexible & powerful decorator for swing components. > It enables to draw on components & respond to component events without modifying the underlying component directly. JAVA 7 14
  • 15. java8 > Java8 [mid of 2013] 2. Language-level support for lambda expressions(->). 3. Closure [not yet confirmed] 4. Tight integration with JavaFX 15
  • 16. Proposal for etrali on up gradation :  what are the befits for Etrali ? 1. increasing the performance up to 20% to 50% 2. size of the code will be reduced 3. reduce heap space or memory leak exceptions 4. project life span will increase.  what are the benefits for our organization ? 1. using the updated technologies 2. we will get some more working days on Etrali 3. profit on worked days JAVA 7 16
  • 17. sample code JDK7Samples.rar 17
  • 18. references : > http://www.oracle.com/technetwork/articles/java/fork- join-422606.html > http://docs.oracle.com/javase/tutorial/essential/concurrency/forkjo in.html > http://docs.oracle.com/javase/7/docs > http://geeknizer.com/java-7-whats-new-performance- benchmark-1-5-1-6-1-7/ > http://docs.oracle.com/javase/tutorial/uiswing/misc/jlayer.html > http://rajakannappan.blogspot.in/2010/05/new-features-in-java-7- dolphin.html JAVA 7 18
  • 19. Queries ANY QUERIES ..? JAVA 7 19
  • 20. THANK YOU Thank you Java 7
  • 21. > Static typed programming languages are those in which variables need not be defined before they’re used. This implies that static typing has to do with the explicit declaration (or initialization) of variables before they’re employed. Java is an example of a static typed language; C and C++ are also static typed languages. Note that in C (and C++ also), variables can be cast into other types, but they don’t get converted; you just read them assuming they are another type. > Static typing does not imply that you have to declare all the variables first, before you use them; variables maybe be initialized anywhere, but developers have to do so before they use those variables anywhere. Consider the following example: > /* C code */ > static int num, sum; // explicit declaration > num = 5; // now use the variables JAVA 7 21 > sum = 10;
  • 22. > http://www.sitepoint.com/typing-versus-dynamic-typing/ > Dynamic typed programming languages are those languages in which variables must necessarily be defined before they are used. This implies that dynamic typed languages do not require the explicit declaration of the variables before they’re used. Python is an example of a dynamic typed programming language, and so is PHP. Consider the following example: JAVA 7 22

Editor's Notes