SlideShare une entreprise Scribd logo
1  sur  28
Java: It’s OOP on Steroids*! Presented by: Milan a.k.amondodello ( Aah! Back into known territory! ) *STATUTORY WARNING: This presentation is not an attempt to popularize steroids. Steroids and more specifically drugs are injurious to health. One must never buy drugs. One should rather become a rockstar. Then you get them for free :P :D !
Topics (intended) to be covered OOP: A rrrrapid review C / C++ and now … err … Java? Java: The new kid on the block! Regular Feature: Some Gyaaan! What NEXT?
OOP: A quick look back
Hmm … so we meet again … OOP is a relatively ‘new’ programming paradigm Competes with Structured Programming Avoids REDUNDANCY, provides FLEXIBILITY Involves lot of jargons  Modularity Abstraction / Data Encapsulation / Info Hiding Inheritance Polymorphism
C, C++ and now Java? Stop throwing jargons at me please!
Why C? Why C++? Procedural Programming: C C + Classes + … = C++ Main problem: Lack of portability That’s primarily what Java builds upon …
Java is born …
Once upon a time… Started by Sun Inc. under codename OAK The Retransformation HotJava Built on the WORA paradigm
WORA: No it’s not a battle-cry! Stands for Write Once Read Anywhere Brainchild of James Gosling Stresses primarily on portability and strict adherence to specifications Enters JVM!
JVM: The Java Virtual Machine It’s Java’s own Interpreter Custom built for different platforms Just worry about your class file, Java takes care of the rest!
Architectural Layers
nuts-’n-bolts of a Java Program
The integral parts Header Files (Use import) Class Definition(s) main() within the class
A Java class format Class <class name> { //datamembers 	<access modifiers> <data type> <variable name> //function definitions 	<access modifiers> <return type> <function name> (comma-separated parameter list) 	{ 		body – of – the - function 	} }
Java ripped apart!
This comprises Java –  Variables/Constants/Arrays Arithmetic Expressions/Operators Control Flow Techniques Pointers/References (???) Methods Classes/Objects … … <This is only a glimpse … > !!!
Varrrrriables An element that varies Vary = change Contrast with CONSTANTS (Rock steady -  do NOT change during program run) 8 types:  byte, short, int, long,  float, double,  boolean,  char
Arithmetic Expressions Rules involving variables, constants, operators etc. Always evaluate to a VALUE Can be used in a helluva innovative ways  Master them and half the battle is one
Control Flow Sequence Embedded in the structure Selection If ... Else  Switch Iteration For Do... While  While
Functions a.k.a Methods A small program in itself Self contained Input-process-output Function prototype Function definition Arguments/Parameters
Pointers ( ::fear::, still ?) Objects as references Call by Reference/Value Primitive datatypes – passed by value Objects – passed by reference Wrapper classes
Idiosyncrasies of Java(1 of 3) Case-sensitive Class Definitions do NOT end with a “;” No global variable concept No standalone main() No non-boolean value in conditional statements
Idiosyncrasies of Java(2 of 3) No structs, enumerations, unions No scope unary scope resolution operator “.” operator super keyword Data-types sizes are FIXED, independent of machine architecture
Idiosyncrasies of Java(3 of 3) Multiple inheritance NOT supported Exception handling typicality Treatment of ob1 = ob2 statements No destructors extends keyword
And now ... Yup, some Gyaan!
Do this to become a Java codewhiz! Be Disciplined Be Regular Try and compete in online coding competitions Practice (Remember it makes a man perfect ... and works for women as well!) Reference: http://java.sun.com/docs/books/tutorial/getStarted/index.html
Your turn now … any questions?
Thanks (m/)!

Contenu connexe

Tendances (8)

Exception handling in java
Exception handling in javaException handling in java
Exception handling in java
 
Exception Handling In Java 15734
Exception Handling In Java 15734Exception Handling In Java 15734
Exception Handling In Java 15734
 
Week7 exception handling
Week7 exception handlingWeek7 exception handling
Week7 exception handling
 
Understanding Exception Handling in .Net
Understanding Exception Handling in .NetUnderstanding Exception Handling in .Net
Understanding Exception Handling in .Net
 
14 exception handling
14 exception handling14 exception handling
14 exception handling
 
The Many Faces of Swift Functions
The Many Faces of Swift FunctionsThe Many Faces of Swift Functions
The Many Faces of Swift Functions
 
D1 Overview of C# programming
D1 Overview of C# programmingD1 Overview of C# programming
D1 Overview of C# programming
 
Best Practices in Exception Handling
Best Practices in Exception HandlingBest Practices in Exception Handling
Best Practices in Exception Handling
 

Similaire à Jumping Into Java Then!

Programming with Java: the Basics
Programming with Java: the BasicsProgramming with Java: the Basics
Programming with Java: the Basics
Jussi Pohjolainen
 
How we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we gotHow we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we got
Baruch Sadogursky
 
How we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we gotHow we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we got
Baruch Sadogursky
 
imperative programming language, java, android
imperative programming language, java, androidimperative programming language, java, android
imperative programming language, java, android
i i
 
Java Intro
Java IntroJava Intro
Java Intro
backdoor
 
Evolving The Java Language
Evolving The Java LanguageEvolving The Java Language
Evolving The Java Language
QConLondon2008
 
Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...
Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...
Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...
Baruch Sadogursky
 
Java script final presentation
Java script final presentationJava script final presentation
Java script final presentation
Adhoura Academy
 

Similaire à Jumping Into Java Then! (20)

Jumping Into Java Then!
Jumping Into Java Then!Jumping Into Java Then!
Jumping Into Java Then!
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8
 
Programming with Java: the Basics
Programming with Java: the BasicsProgramming with Java: the Basics
Programming with Java: the Basics
 
OOP Design & FP Design
OOP Design & FP DesignOOP Design & FP Design
OOP Design & FP Design
 
How we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we gotHow we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we got
 
How we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we gotHow we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we got
 
Grooming with Groovy
Grooming with GroovyGrooming with Groovy
Grooming with Groovy
 
Amber and beyond: Java language changes
Amber and beyond: Java language changesAmber and beyond: Java language changes
Amber and beyond: Java language changes
 
Core java
Core javaCore java
Core java
 
Java 8 - Lambdas and much more
Java 8 - Lambdas and much moreJava 8 - Lambdas and much more
Java 8 - Lambdas and much more
 
Learn To Code: Introduction to java
Learn To Code: Introduction to javaLearn To Code: Introduction to java
Learn To Code: Introduction to java
 
imperative programming language, java, android
imperative programming language, java, androidimperative programming language, java, android
imperative programming language, java, android
 
What is new in J2SE 5
What is new in J2SE 5What is new in J2SE 5
What is new in J2SE 5
 
Java Intro
Java IntroJava Intro
Java Intro
 
Evolving The Java Language
Evolving The Java LanguageEvolving The Java Language
Evolving The Java Language
 
Functional programming with_jdk8-s_ritter
Functional programming with_jdk8-s_ritterFunctional programming with_jdk8-s_ritter
Functional programming with_jdk8-s_ritter
 
Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...
Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...
Persisting Your Objects In The Database World @ AlphaCSP Professional OSS Con...
 
Java performance
Java performanceJava performance
Java performance
 
Java script final presentation
Java script final presentationJava script final presentation
Java script final presentation
 
Testing smells
Testing smellsTesting smells
Testing smells
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

Jumping Into Java Then!

  • 1. Java: It’s OOP on Steroids*! Presented by: Milan a.k.amondodello ( Aah! Back into known territory! ) *STATUTORY WARNING: This presentation is not an attempt to popularize steroids. Steroids and more specifically drugs are injurious to health. One must never buy drugs. One should rather become a rockstar. Then you get them for free :P :D !
  • 2. Topics (intended) to be covered OOP: A rrrrapid review C / C++ and now … err … Java? Java: The new kid on the block! Regular Feature: Some Gyaaan! What NEXT?
  • 3. OOP: A quick look back
  • 4. Hmm … so we meet again … OOP is a relatively ‘new’ programming paradigm Competes with Structured Programming Avoids REDUNDANCY, provides FLEXIBILITY Involves lot of jargons Modularity Abstraction / Data Encapsulation / Info Hiding Inheritance Polymorphism
  • 5. C, C++ and now Java? Stop throwing jargons at me please!
  • 6. Why C? Why C++? Procedural Programming: C C + Classes + … = C++ Main problem: Lack of portability That’s primarily what Java builds upon …
  • 8. Once upon a time… Started by Sun Inc. under codename OAK The Retransformation HotJava Built on the WORA paradigm
  • 9. WORA: No it’s not a battle-cry! Stands for Write Once Read Anywhere Brainchild of James Gosling Stresses primarily on portability and strict adherence to specifications Enters JVM!
  • 10. JVM: The Java Virtual Machine It’s Java’s own Interpreter Custom built for different platforms Just worry about your class file, Java takes care of the rest!
  • 12. nuts-’n-bolts of a Java Program
  • 13. The integral parts Header Files (Use import) Class Definition(s) main() within the class
  • 14. A Java class format Class <class name> { //datamembers <access modifiers> <data type> <variable name> //function definitions <access modifiers> <return type> <function name> (comma-separated parameter list) { body – of – the - function } }
  • 16. This comprises Java – Variables/Constants/Arrays Arithmetic Expressions/Operators Control Flow Techniques Pointers/References (???) Methods Classes/Objects … … <This is only a glimpse … > !!!
  • 17. Varrrrriables An element that varies Vary = change Contrast with CONSTANTS (Rock steady - do NOT change during program run) 8 types: byte, short, int, long, float, double, boolean, char
  • 18. Arithmetic Expressions Rules involving variables, constants, operators etc. Always evaluate to a VALUE Can be used in a helluva innovative ways Master them and half the battle is one
  • 19. Control Flow Sequence Embedded in the structure Selection If ... Else Switch Iteration For Do... While While
  • 20. Functions a.k.a Methods A small program in itself Self contained Input-process-output Function prototype Function definition Arguments/Parameters
  • 21. Pointers ( ::fear::, still ?) Objects as references Call by Reference/Value Primitive datatypes – passed by value Objects – passed by reference Wrapper classes
  • 22. Idiosyncrasies of Java(1 of 3) Case-sensitive Class Definitions do NOT end with a “;” No global variable concept No standalone main() No non-boolean value in conditional statements
  • 23. Idiosyncrasies of Java(2 of 3) No structs, enumerations, unions No scope unary scope resolution operator “.” operator super keyword Data-types sizes are FIXED, independent of machine architecture
  • 24. Idiosyncrasies of Java(3 of 3) Multiple inheritance NOT supported Exception handling typicality Treatment of ob1 = ob2 statements No destructors extends keyword
  • 25. And now ... Yup, some Gyaan!
  • 26. Do this to become a Java codewhiz! Be Disciplined Be Regular Try and compete in online coding competitions Practice (Remember it makes a man perfect ... and works for women as well!) Reference: http://java.sun.com/docs/books/tutorial/getStarted/index.html
  • 27. Your turn now … any questions?