SlideShare ist ein Scribd-Unternehmen logo
1 von 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/)!

Weitere ähnliche Inhalte

Was ist angesagt?

Exception handling in java
Exception handling in javaException handling in java
Exception handling in javaravinderkaur165
 
Exception Handling In Java 15734
Exception Handling In Java 15734Exception Handling In Java 15734
Exception Handling In Java 15734madhurendra pandey
 
Week7 exception handling
Week7 exception handlingWeek7 exception handling
Week7 exception handlingAlpesh Oza
 
Understanding Exception Handling in .Net
Understanding Exception Handling in .NetUnderstanding Exception Handling in .Net
Understanding Exception Handling in .NetMindfire Solutions
 
14 exception handling
14 exception handling14 exception handling
14 exception handlingjigeno
 
The Many Faces of Swift Functions
The Many Faces of Swift FunctionsThe Many Faces of Swift Functions
The Many Faces of Swift FunctionsNatasha Murashev
 
Best Practices in Exception Handling
Best Practices in Exception HandlingBest Practices in Exception Handling
Best Practices in Exception HandlingLemi Orhan Ergin
 

Was ist angesagt? (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
 

Ähnlich wie Jumping Into Java Then!

Jumping Into Java Then!
Jumping Into Java Then!Jumping Into Java Then!
Jumping Into Java Then!mondodello
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8Talha Ocakçı
 
Programming with Java: the Basics
Programming with Java: the BasicsProgramming with Java: the Basics
Programming with Java: the BasicsJussi Pohjolainen
 
OOP Design & FP Design
OOP Design & FP DesignOOP Design & FP Design
OOP Design & FP DesignDiego Pacheco
 
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 gotBaruch 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 gotBaruch Sadogursky
 
Grooming with Groovy
Grooming with GroovyGrooming with Groovy
Grooming with GroovyDhaval Dalal
 
Amber and beyond: Java language changes
Amber and beyond: Java language changesAmber and beyond: Java language changes
Amber and beyond: Java language changesStephen Colebourne
 
Java 8 - Lambdas and much more
Java 8 - Lambdas and much moreJava 8 - Lambdas and much more
Java 8 - Lambdas and much moreAlin Pandichi
 
Learn To Code: Introduction to java
Learn To Code: Introduction to javaLearn To Code: Introduction to java
Learn To Code: Introduction to javaSadhanaParameswaran
 
imperative programming language, java, android
imperative programming language, java, androidimperative programming language, java, android
imperative programming language, java, androidi i
 
Java Intro
Java IntroJava Intro
Java Introbackdoor
 
Evolving The Java Language
Evolving The Java LanguageEvolving The Java Language
Evolving The Java LanguageQConLondon2008
 
Functional programming with_jdk8-s_ritter
Functional programming with_jdk8-s_ritterFunctional programming with_jdk8-s_ritter
Functional programming with_jdk8-s_ritterSimon 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...Baruch Sadogursky
 
Java script final presentation
Java script final presentationJava script final presentation
Java script final presentationAdhoura Academy
 

Ähnlich wie 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
 

Kürzlich hochgeladen

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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?Igalia
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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 RobisonAnna Loughnan Colquhoun
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
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...Martijn de Jong
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
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...apidays
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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 WorkerThousandEyes
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Kürzlich hochgeladen (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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?
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
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...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

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?