SlideShare a Scribd company logo
1 of 24
Classes and Objects


Pre-assessment Questions
    1.   Predict the output of the expression, 16 % 3?
         a. 5
         b. 0
         c. 1
         d. 4
    2.   What is the default value of the float data type?
         a. 0.0
         b. 0
         c. 1.0
         d. 1




 ©NIIT                    Java Fundamentals                  Lesson 2B / Slide 1 of 24
Classes and Objects


Pre-assessment Questions (Contd.)
    3.   Consider the statements:
         Statement A: The name of a variable can begin with a digit.
         Statement B: The name of a variable can contain white spaces.

         Identify the correct option.
         a. Statement A is true and statement B is false.
         b. Statement A is false and statement B is true.
         c. Both, statements, A and B, are true.
         d. Both, statements, A and B, are false.




 ©NIIT                    Java Fundamentals                 Lesson 2B / Slide 2 of 24
Classes and Objects


Pre-assessment Questions (Contd.)
    4.   _______variables are the local variables that are accessed by the function in
         which the variables are declared.
         a. Static
         b. Automatic
         c. Instance
         d. Class.



    8.   _______ literals are enclosed in single quotes.
         a. String
         b. Character
         c. Boolean
         d. Integer



 ©NIIT                    Java Fundamentals                  Lesson 2B / Slide 3 of 24
Classes and Objects


Solutions to Pre-assessment
  Questions
    1.   c.   1
    2.   a.   0.0
    3.   d.   Both, statements A and B, are false
    4.   a.   Static
    5.   b.    Character




 ©NIIT                      Java Fundamentals       Lesson 2B / Slide 4 of 24
Classes and Objects


Objectives
    •    In this lesson, you will learn about:
           • Structure of a Java program
           • Access specifiers and modifiers
           • Creating a Java application




 ©NIIT                       Java Fundamentals   Lesson 2B / Slide 5 of 24
Classes and Objects


Structure of Java Application
    •    Creating Classes and Objects
           • The components of a class consists of
                • Data members (Attributes)
                • Methods




 ©NIIT                     Java Fundamentals         Lesson 2B / Slide 6 of 24
Classes and Objects


Structure of Java Application (Contd.)
    •    Creating Classes in Java
           • The statements written in a Java class must end with a semicolon, ;.
          class ClassName
          {
          //Declaration of data members
          //Declaration of methods
          }


    •    Double slash, //, are comment entries. Comments are ignored by compiler.




 ©NIIT                      Java Fundamentals                 Lesson 2B / Slide 7 of 24
Classes and Objects


Structure of Java Application (Contd.)
    •    Creating Objects of Classes
           • An object is an instance of a class having a unique identity.
           • To create an object, you need to perform the following steps:
                • Declaration
                • Instantiation or creation




 ©NIIT                      Java Fundamentals                 Lesson 2B / Slide 8 of 24
Classes and Objects


Structure of Java Application (Contd.)
    •    Accessing Data Members of a Class
           • Assign values to data members of the object before using them.
           • You can access the data members of a class outside the class by
             specifying the object name followed by the dot operator and the data
             member name.
                e1.employeeName="John";
                e2.emmployeeName="Andy";

               e1.employeeID=1;
               e2.employeeID=2;
               e1.employeeDesignation = “Manager”;
               e2.employeeDesignation = “Director”;




 ©NIIT                     Java Fundamentals                 Lesson 2B / Slide 9 of 24
Classes and Objects


Structure of Java Application (Contd.)
    •    Adding Methods to a Class
         • Accessing data members directly overrules the concept of
              encapsulation.
         • Advantages of using methods in a Java program:
              • Reusability
              • Reducing Complexity
              • Data Hiding




 ©NIIT                   Java Fundamentals             Lesson 2B / Slide 10 of 24
Classes and Objects


Structure of Java Application (Contd.)
         •   The syntax to define a method:
             void methodName()
             {
                  // Method body.
             }




 ©NIIT                  Java Fundamentals     Lesson 2B / Slide 11 of 24
Classes and Objects


Structure of Java Application (Contd.)
    •    Declaring the main() Method:
         • The syntax to declare the main()method:
              public static void main(String args[])
              {
              // Code for main() method
              }
         • public: method can be accessed from any object in a Java program.
         • static : associates the method with its class.
         • void: signifies that the main() method returns no value.
    •    The main() method can be declared in any class but the name of the file and
         the class name in which the main() method is declared should be the same.
    •    The main() method accepts a single argument in the form of an array of
         elements of type String.



 ©NIIT                   Java Fundamentals                Lesson 2B / Slide 12 of 24
Classes and Objects


Structure of Java Application (Contd.)

    •    Following code snippet creates objects for four employees of an
         organization:

          Employee   e1   =new   Employee();
          Employee   e2   =new   Employee();
          Employee   e3   =new   Employee();
          Employee   e4   =new   Employee();




 ©NIIT                     Java Fundamentals              Lesson 2B / Slide 13 of 24
Classes and Objects


Structure of Java Application (Contd.)
    •    Defining Constructors
         • A constructor is a method with the same name as the class name.
         • A constructor of a class is automatically invoked every time an instance
              of a class is created.
    •    Characteristics of Constructors
         • There is no return type for a constructor.
         •     A constructor returns the instance of the class instead of a value.
         • A constructor is used to assign values to the data members of each
              object created from a class.




 ©NIIT                   Java Fundamentals                Lesson 2B / Slide 14 of 24
Classes and Objects


Access Specifiers and Modifiers
    •    Access Specifiers
         • public
         • private
         • protected
         • friendly
    •    The public access specifier
         • Class members with public specifier can be accessed anywhere in the
              same class, package in which the class is created, or a package other
              than the one in which the class is declared.
         • The public keyword is used to declare a member as public.
              public <data type> <variable name>;




 ©NIIT                    Java Fundamentals                Lesson 2B / Slide 15 of 24
Classes and Objects


Access Specifiers and Modifiers
    •    The private access specifier
         • A data member of a class declared private is accessible at the class
              level only in which it is defined.
         • The private keyword is used to declare a member as private.
              private float <variableName>; // Private data member of float
                                                  //type
              private methodName();                // Private method
    •    The protected access specifier
         • The variables and methods are accessible only to the subclasses of the
              class in which they are declared.
         • The protected keyword is used to declare a member as protected.
              protected <data type> <name of the variable>;
    •    The friendly or package access specifier
         • If you do not specify any access specifier, the scope of data members
              and methods is friendly.

 ©NIIT                   Java Fundamentals              Lesson 2B / Slide 16 of 24
Classes and Objects


Access Specifiers and Modifiers(Contd.)
    •    Types of Permitted Modifiers
         • Modifiers determine or define how the data members and methods are
             used in other classes and objects.
             • static
             • final
             • abstract
             • native
             • synchronized




 ©NIIT                  Java Fundamentals             Lesson 2B / Slide 17 of 24
Classes and Objects

Access Specifiers and Modifiers(Contd.)
         •   static
             • Used to define class variables and methods that belong to a
                   class and not to any particular instance of the class.
             • Associates the data members with a class and not the objects of
                   the class.
         •   final
             • Indicates that the data member cannot be modified.
             • Does not allow the class to be inherited.
             • A final method cannot be modified in the subclass.
             • All the methods and data members in a final class are implicitly
                   final.
         •   abstract
             • Used to declare classes that define common properties and
                   behavior of other classes.
             • An abstract class is used as a base class to derive specific
                   classes of the same type.
 ©NIIT             Java Fundamentals               Lesson 2B / Slide 18 of 24
Classes and Objects

Access Specifiers and Modifiers(Contd.)
         •   native
             • Used only with methods.
             • Inform the compiler that the method has been coded in a
                  programming language other than Java, such as C or C++ .
             • The native keyword with a method indicates that the method
                  lies outside the Java Runtime Environment (JRE).
             public native void nativeMethod(var1, var2, . . .) ;
         •   synchronized
             • controls the access to a block of code in a multithreaded
                  programming environment.
             • Java supports multithreaded programming and each thread
                  defines a separate path of execution.




 ©NIIT             Java Fundamentals              Lesson 2B / Slide 19 of 24
Classes and Objects


Compiling an Application
    •    Compiling an Application
         • Save the code with a file name that is exactly the same as that of the
            class name, with a .java extension.
         • The steps to compile the Java file:
            • Open the command window.
            • Set the PATH variable to the bin directory of the installation
                  directory by using the following command at the command
                  prompt:
            • PATH=C:j2sdk1.4.1_02bin




 ©NIIT                   Java Fundamentals                Lesson 2B / Slide 20 of 24
Classes and Objects

Compiling an Application
         •   Change to the directory where you have saved the .java file. You can
             also give the complete path of the .java file while compiling it .
         •   Compile the application
         •   Execute the Bytecode.




 ©NIIT                   Java Fundamentals                Lesson 2B / Slide 21 of 24
Classes and Objects


Summary
    In this lesson, you learned:


    •    A class includes data members and methods. Methods can include
         expressions that evaluate to a value.
    •    Creating a class includes declaration of class members. Data members of
         same type can be declared in a single line.
    •    You can declare a class without data variables and methods.
    •    A class with only data members is of no practical use.
    •    You can interact directly with data members inside the class only.
    •    Object creation includes declaration of class object variable and assigning
         memory to object variable.
    •    You can access data members outside the class through class objects.
    •    A constructor is invoked on every creation of an object of a class type. The
         constructor can be used to initialize data members of newly created object.


 ©NIIT                    Java Fundamentals                 Lesson 2B / Slide 22 of 24
Classes and Objects


Summary(Contd.)
    •    There are two types of constructors the default constructor and the
         overloaded constructor.
    •    A constructor returns no value and has the same name as the class itself.
    •    A Java application requires a main() method to start execution.
    •    The Java interpreter first of all looks for the main() method. The class name
         and the file name in which the main() method is declared are same.
    •    You can use access specifiers to restrict the access to class members by
         other classes.
    •    There are private, public, and protected access specifiers. Private access
         specifier gives the most restricted access among all the access specifiers.




 ©NIIT                    Java Fundamentals                 Lesson 2B / Slide 23 of 24
Classes and Objects


Summary(Contd.)
    •    Class members with public specifier can be accessed anywhere in the same
         class, same package, or a different package.
    •    A modifier determines the use of the data members and methods in other
         classes and objects.
    •    The various modifiers available in Java are static, final, abstract, native, and
         synchronized .
    •    You must set the PATH variable of the operating system to the bin directory
         of the installation directory.
    •    You need to use the javac fileName.java command to compile the
         fileName.java file.
    •    You need to use the java fileName to execute the fileName.class file.




 ©NIIT                     Java Fundamentals                  Lesson 2B / Slide 24 of 24

More Related Content

What's hot

Java session01
Java session01Java session01
Java session01Niit Care
 
50+ java interview questions
50+ java interview questions50+ java interview questions
50+ java interview questionsSynergisticMedia
 
3 f6 8_databases
3 f6 8_databases3 f6 8_databases
3 f6 8_databasesop205
 
10265 developing data access solutions with microsoft visual studio 2010
10265 developing data access solutions with microsoft visual studio 201010265 developing data access solutions with microsoft visual studio 2010
10265 developing data access solutions with microsoft visual studio 2010bestip
 
Chapter 2 slides
Chapter 2 slidesChapter 2 slides
Chapter 2 slideslara_ays
 
159747608 a-training-report-on
159747608 a-training-report-on159747608 a-training-report-on
159747608 a-training-report-onhomeworkping7
 
3 f6 9_distributed_systems
3 f6 9_distributed_systems3 f6 9_distributed_systems
3 f6 9_distributed_systemsop205
 
Dot Net Interview Questions - Part 1
Dot Net Interview Questions - Part 1Dot Net Interview Questions - Part 1
Dot Net Interview Questions - Part 1ReKruiTIn.com
 
Innovation In Standards Publishing
Innovation In Standards PublishingInnovation In Standards Publishing
Innovation In Standards PublishingJonathan Griffin
 
Fragility in evolving software
Fragility in evolving softwareFragility in evolving software
Fragility in evolving softwarekim.mens
 
Deep neural networks for Youtube recommendations
Deep neural networks for Youtube recommendationsDeep neural networks for Youtube recommendations
Deep neural networks for Youtube recommendationsAryan Khandal
 

What's hot (20)

Ajs 3 c
Ajs 3 cAjs 3 c
Ajs 3 c
 
Ajs 2 a
Ajs 2 aAjs 2 a
Ajs 2 a
 
Ajs 2 c
Ajs 2 cAjs 2 c
Ajs 2 c
 
Java session01
Java session01Java session01
Java session01
 
50+ java interview questions
50+ java interview questions50+ java interview questions
50+ java interview questions
 
Brouchure
BrouchureBrouchure
Brouchure
 
3 f6 8_databases
3 f6 8_databases3 f6 8_databases
3 f6 8_databases
 
10265 developing data access solutions with microsoft visual studio 2010
10265 developing data access solutions with microsoft visual studio 201010265 developing data access solutions with microsoft visual studio 2010
10265 developing data access solutions with microsoft visual studio 2010
 
Dtacs
DtacsDtacs
Dtacs
 
Chapter 2 slides
Chapter 2 slidesChapter 2 slides
Chapter 2 slides
 
159747608 a-training-report-on
159747608 a-training-report-on159747608 a-training-report-on
159747608 a-training-report-on
 
3 f6 9_distributed_systems
3 f6 9_distributed_systems3 f6 9_distributed_systems
3 f6 9_distributed_systems
 
Dot Net Interview Questions - Part 1
Dot Net Interview Questions - Part 1Dot Net Interview Questions - Part 1
Dot Net Interview Questions - Part 1
 
Dacj 1-2 c
Dacj 1-2 cDacj 1-2 c
Dacj 1-2 c
 
Dacj 1-1 c
Dacj 1-1 cDacj 1-1 c
Dacj 1-1 c
 
Innovation In Standards Publishing
Innovation In Standards PublishingInnovation In Standards Publishing
Innovation In Standards Publishing
 
7494611
74946117494611
7494611
 
Fragility in evolving software
Fragility in evolving softwareFragility in evolving software
Fragility in evolving software
 
Deep neural networks for Youtube recommendations
Deep neural networks for Youtube recommendationsDeep neural networks for Youtube recommendations
Deep neural networks for Youtube recommendations
 
Introducing MDSD
Introducing MDSDIntroducing MDSD
Introducing MDSD
 

Viewers also liked

Ado.net session11
Ado.net session11Ado.net session11
Ado.net session11Niit Care
 
Ado.net session10
Ado.net session10Ado.net session10
Ado.net session10Niit Care
 
Ado.net session05
Ado.net session05Ado.net session05
Ado.net session05Niit Care
 
Technology Based learning at NIIT University
Technology Based learning at NIIT University Technology Based learning at NIIT University
Technology Based learning at NIIT University I Love Science
 
04 asp.net session05
04 asp.net session0504 asp.net session05
04 asp.net session05Niit Care
 
02 ds and algorithm session_02
02 ds and algorithm session_0202 ds and algorithm session_02
02 ds and algorithm session_02Niit Care
 
08 ds and algorithm session_11
08 ds and algorithm session_1108 ds and algorithm session_11
08 ds and algorithm session_11Niit Care
 
03 ds and algorithm session_04
03 ds and algorithm session_0403 ds and algorithm session_04
03 ds and algorithm session_04Niit Care
 
01 ds and algorithm session_01
01 ds and algorithm session_0101 ds and algorithm session_01
01 ds and algorithm session_01Niit Care
 

Viewers also liked (12)

Ado.net session11
Ado.net session11Ado.net session11
Ado.net session11
 
Ado.net session10
Ado.net session10Ado.net session10
Ado.net session10
 
Ado.net session05
Ado.net session05Ado.net session05
Ado.net session05
 
Dacj 1-2 a
Dacj 1-2 aDacj 1-2 a
Dacj 1-2 a
 
Dacj 1-3 c
Dacj 1-3 cDacj 1-3 c
Dacj 1-3 c
 
Technology Based learning at NIIT University
Technology Based learning at NIIT University Technology Based learning at NIIT University
Technology Based learning at NIIT University
 
04 asp.net session05
04 asp.net session0504 asp.net session05
04 asp.net session05
 
Ds 1
Ds 1Ds 1
Ds 1
 
02 ds and algorithm session_02
02 ds and algorithm session_0202 ds and algorithm session_02
02 ds and algorithm session_02
 
08 ds and algorithm session_11
08 ds and algorithm session_1108 ds and algorithm session_11
08 ds and algorithm session_11
 
03 ds and algorithm session_04
03 ds and algorithm session_0403 ds and algorithm session_04
03 ds and algorithm session_04
 
01 ds and algorithm session_01
01 ds and algorithm session_0101 ds and algorithm session_01
01 ds and algorithm session_01
 

Similar to Dacj 1-2 b

Similar to Dacj 1-2 b (20)

chapter 5 concepts of object oriented programming
chapter 5 concepts of object oriented programmingchapter 5 concepts of object oriented programming
chapter 5 concepts of object oriented programming
 
9 cm604.14
9 cm604.149 cm604.14
9 cm604.14
 
PPT Lecture-1.4.pptx
PPT Lecture-1.4.pptxPPT Lecture-1.4.pptx
PPT Lecture-1.4.pptx
 
C# classes objects
C#  classes objectsC#  classes objects
C# classes objects
 
Introduction to OOP with java
Introduction to OOP with javaIntroduction to OOP with java
Introduction to OOP with java
 
Dacj 2-1 a
Dacj 2-1 aDacj 2-1 a
Dacj 2-1 a
 
Chap01
Chap01Chap01
Chap01
 
DAY_1.4.pptx
DAY_1.4.pptxDAY_1.4.pptx
DAY_1.4.pptx
 
Java session02
Java session02Java session02
Java session02
 
Classes in Java great learning.pdf
Classes in Java great learning.pdfClasses in Java great learning.pdf
Classes in Java great learning.pdf
 
Inheritance
Inheritance Inheritance
Inheritance
 
core_java.ppt
core_java.pptcore_java.ppt
core_java.ppt
 
Ppt chapter05
Ppt chapter05Ppt chapter05
Ppt chapter05
 
BIT211_3.pdf
BIT211_3.pdfBIT211_3.pdf
BIT211_3.pdf
 
Classes and objects
Classes and objectsClasses and objects
Classes and objects
 
OOP Unit 2 - Classes and Object
OOP Unit 2 - Classes and ObjectOOP Unit 2 - Classes and Object
OOP Unit 2 - Classes and Object
 
Vb.net session 04
Vb.net session 04Vb.net session 04
Vb.net session 04
 
Core Java for Selenium
Core Java for SeleniumCore Java for Selenium
Core Java for Selenium
 
Constructors and Method Overloading
Constructors and Method OverloadingConstructors and Method Overloading
Constructors and Method Overloading
 
Java sessionnotes
Java sessionnotesJava sessionnotes
Java sessionnotes
 

More from Niit Care

More from Niit Care (16)

Ajs 4 c
Ajs 4 cAjs 4 c
Ajs 4 c
 
Ajs 1 a
Ajs 1 aAjs 1 a
Ajs 1 a
 
Ajs 1 c
Ajs 1 cAjs 1 c
Ajs 1 c
 
Dacj 4 2-c
Dacj 4 2-cDacj 4 2-c
Dacj 4 2-c
 
Dacj 4 2-b
Dacj 4 2-bDacj 4 2-b
Dacj 4 2-b
 
Dacj 4 2-a
Dacj 4 2-aDacj 4 2-a
Dacj 4 2-a
 
Dacj 4 1-c
Dacj 4 1-cDacj 4 1-c
Dacj 4 1-c
 
Dacj 4 1-b
Dacj 4 1-bDacj 4 1-b
Dacj 4 1-b
 
Dacj 1-3 b
Dacj 1-3 bDacj 1-3 b
Dacj 1-3 b
 
Dacj 1-3 a
Dacj 1-3 aDacj 1-3 a
Dacj 1-3 a
 
Dacj 1-1 b
Dacj 1-1 bDacj 1-1 b
Dacj 1-1 b
 
Dacj 1-1 a
Dacj 1-1 aDacj 1-1 a
Dacj 1-1 a
 
Dacj 2-2 b
Dacj 2-2 bDacj 2-2 b
Dacj 2-2 b
 
Dacj 2-2 a
Dacj 2-2 aDacj 2-2 a
Dacj 2-2 a
 
Dacj 2-1 c
Dacj 2-1 cDacj 2-1 c
Dacj 2-1 c
 
Dacj 2-1 b
Dacj 2-1 bDacj 2-1 b
Dacj 2-1 b
 

Recently uploaded

Revolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligenceRevolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligencePrecisely
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfalexjohnson7307
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform EngineeringMarcus Vechiato
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...FIDO Alliance
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewDianaGray10
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfdanishmna97
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxFIDO Alliance
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireExakis Nelite
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityVictorSzoltysek
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfAnubhavMangla3
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfSrushith Repakula
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!Memoori
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Hiroshi SHIBATA
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024Lorenzo Miniero
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...ScyllaDB
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGDSC PJATK
 

Recently uploaded (20)

Revolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligenceRevolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial Intelligence
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overview
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 

Dacj 1-2 b

  • 1. Classes and Objects Pre-assessment Questions 1. Predict the output of the expression, 16 % 3? a. 5 b. 0 c. 1 d. 4 2. What is the default value of the float data type? a. 0.0 b. 0 c. 1.0 d. 1 ©NIIT Java Fundamentals Lesson 2B / Slide 1 of 24
  • 2. Classes and Objects Pre-assessment Questions (Contd.) 3. Consider the statements: Statement A: The name of a variable can begin with a digit. Statement B: The name of a variable can contain white spaces. Identify the correct option. a. Statement A is true and statement B is false. b. Statement A is false and statement B is true. c. Both, statements, A and B, are true. d. Both, statements, A and B, are false. ©NIIT Java Fundamentals Lesson 2B / Slide 2 of 24
  • 3. Classes and Objects Pre-assessment Questions (Contd.) 4. _______variables are the local variables that are accessed by the function in which the variables are declared. a. Static b. Automatic c. Instance d. Class. 8. _______ literals are enclosed in single quotes. a. String b. Character c. Boolean d. Integer ©NIIT Java Fundamentals Lesson 2B / Slide 3 of 24
  • 4. Classes and Objects Solutions to Pre-assessment Questions 1. c. 1 2. a. 0.0 3. d. Both, statements A and B, are false 4. a. Static 5. b. Character ©NIIT Java Fundamentals Lesson 2B / Slide 4 of 24
  • 5. Classes and Objects Objectives • In this lesson, you will learn about: • Structure of a Java program • Access specifiers and modifiers • Creating a Java application ©NIIT Java Fundamentals Lesson 2B / Slide 5 of 24
  • 6. Classes and Objects Structure of Java Application • Creating Classes and Objects • The components of a class consists of • Data members (Attributes) • Methods ©NIIT Java Fundamentals Lesson 2B / Slide 6 of 24
  • 7. Classes and Objects Structure of Java Application (Contd.) • Creating Classes in Java • The statements written in a Java class must end with a semicolon, ;. class ClassName { //Declaration of data members //Declaration of methods } • Double slash, //, are comment entries. Comments are ignored by compiler. ©NIIT Java Fundamentals Lesson 2B / Slide 7 of 24
  • 8. Classes and Objects Structure of Java Application (Contd.) • Creating Objects of Classes • An object is an instance of a class having a unique identity. • To create an object, you need to perform the following steps: • Declaration • Instantiation or creation ©NIIT Java Fundamentals Lesson 2B / Slide 8 of 24
  • 9. Classes and Objects Structure of Java Application (Contd.) • Accessing Data Members of a Class • Assign values to data members of the object before using them. • You can access the data members of a class outside the class by specifying the object name followed by the dot operator and the data member name. e1.employeeName="John"; e2.emmployeeName="Andy"; e1.employeeID=1; e2.employeeID=2; e1.employeeDesignation = “Manager”; e2.employeeDesignation = “Director”; ©NIIT Java Fundamentals Lesson 2B / Slide 9 of 24
  • 10. Classes and Objects Structure of Java Application (Contd.) • Adding Methods to a Class • Accessing data members directly overrules the concept of encapsulation. • Advantages of using methods in a Java program: • Reusability • Reducing Complexity • Data Hiding ©NIIT Java Fundamentals Lesson 2B / Slide 10 of 24
  • 11. Classes and Objects Structure of Java Application (Contd.) • The syntax to define a method: void methodName() { // Method body. } ©NIIT Java Fundamentals Lesson 2B / Slide 11 of 24
  • 12. Classes and Objects Structure of Java Application (Contd.) • Declaring the main() Method: • The syntax to declare the main()method: public static void main(String args[]) { // Code for main() method } • public: method can be accessed from any object in a Java program. • static : associates the method with its class. • void: signifies that the main() method returns no value. • The main() method can be declared in any class but the name of the file and the class name in which the main() method is declared should be the same. • The main() method accepts a single argument in the form of an array of elements of type String. ©NIIT Java Fundamentals Lesson 2B / Slide 12 of 24
  • 13. Classes and Objects Structure of Java Application (Contd.) • Following code snippet creates objects for four employees of an organization: Employee e1 =new Employee(); Employee e2 =new Employee(); Employee e3 =new Employee(); Employee e4 =new Employee(); ©NIIT Java Fundamentals Lesson 2B / Slide 13 of 24
  • 14. Classes and Objects Structure of Java Application (Contd.) • Defining Constructors • A constructor is a method with the same name as the class name. • A constructor of a class is automatically invoked every time an instance of a class is created. • Characteristics of Constructors • There is no return type for a constructor. • A constructor returns the instance of the class instead of a value. • A constructor is used to assign values to the data members of each object created from a class. ©NIIT Java Fundamentals Lesson 2B / Slide 14 of 24
  • 15. Classes and Objects Access Specifiers and Modifiers • Access Specifiers • public • private • protected • friendly • The public access specifier • Class members with public specifier can be accessed anywhere in the same class, package in which the class is created, or a package other than the one in which the class is declared. • The public keyword is used to declare a member as public. public <data type> <variable name>; ©NIIT Java Fundamentals Lesson 2B / Slide 15 of 24
  • 16. Classes and Objects Access Specifiers and Modifiers • The private access specifier • A data member of a class declared private is accessible at the class level only in which it is defined. • The private keyword is used to declare a member as private. private float <variableName>; // Private data member of float //type private methodName(); // Private method • The protected access specifier • The variables and methods are accessible only to the subclasses of the class in which they are declared. • The protected keyword is used to declare a member as protected. protected <data type> <name of the variable>; • The friendly or package access specifier • If you do not specify any access specifier, the scope of data members and methods is friendly. ©NIIT Java Fundamentals Lesson 2B / Slide 16 of 24
  • 17. Classes and Objects Access Specifiers and Modifiers(Contd.) • Types of Permitted Modifiers • Modifiers determine or define how the data members and methods are used in other classes and objects. • static • final • abstract • native • synchronized ©NIIT Java Fundamentals Lesson 2B / Slide 17 of 24
  • 18. Classes and Objects Access Specifiers and Modifiers(Contd.) • static • Used to define class variables and methods that belong to a class and not to any particular instance of the class. • Associates the data members with a class and not the objects of the class. • final • Indicates that the data member cannot be modified. • Does not allow the class to be inherited. • A final method cannot be modified in the subclass. • All the methods and data members in a final class are implicitly final. • abstract • Used to declare classes that define common properties and behavior of other classes. • An abstract class is used as a base class to derive specific classes of the same type. ©NIIT Java Fundamentals Lesson 2B / Slide 18 of 24
  • 19. Classes and Objects Access Specifiers and Modifiers(Contd.) • native • Used only with methods. • Inform the compiler that the method has been coded in a programming language other than Java, such as C or C++ . • The native keyword with a method indicates that the method lies outside the Java Runtime Environment (JRE). public native void nativeMethod(var1, var2, . . .) ; • synchronized • controls the access to a block of code in a multithreaded programming environment. • Java supports multithreaded programming and each thread defines a separate path of execution. ©NIIT Java Fundamentals Lesson 2B / Slide 19 of 24
  • 20. Classes and Objects Compiling an Application • Compiling an Application • Save the code with a file name that is exactly the same as that of the class name, with a .java extension. • The steps to compile the Java file: • Open the command window. • Set the PATH variable to the bin directory of the installation directory by using the following command at the command prompt: • PATH=C:j2sdk1.4.1_02bin ©NIIT Java Fundamentals Lesson 2B / Slide 20 of 24
  • 21. Classes and Objects Compiling an Application • Change to the directory where you have saved the .java file. You can also give the complete path of the .java file while compiling it . • Compile the application • Execute the Bytecode. ©NIIT Java Fundamentals Lesson 2B / Slide 21 of 24
  • 22. Classes and Objects Summary In this lesson, you learned: • A class includes data members and methods. Methods can include expressions that evaluate to a value. • Creating a class includes declaration of class members. Data members of same type can be declared in a single line. • You can declare a class without data variables and methods. • A class with only data members is of no practical use. • You can interact directly with data members inside the class only. • Object creation includes declaration of class object variable and assigning memory to object variable. • You can access data members outside the class through class objects. • A constructor is invoked on every creation of an object of a class type. The constructor can be used to initialize data members of newly created object. ©NIIT Java Fundamentals Lesson 2B / Slide 22 of 24
  • 23. Classes and Objects Summary(Contd.) • There are two types of constructors the default constructor and the overloaded constructor. • A constructor returns no value and has the same name as the class itself. • A Java application requires a main() method to start execution. • The Java interpreter first of all looks for the main() method. The class name and the file name in which the main() method is declared are same. • You can use access specifiers to restrict the access to class members by other classes. • There are private, public, and protected access specifiers. Private access specifier gives the most restricted access among all the access specifiers. ©NIIT Java Fundamentals Lesson 2B / Slide 23 of 24
  • 24. Classes and Objects Summary(Contd.) • Class members with public specifier can be accessed anywhere in the same class, same package, or a different package. • A modifier determines the use of the data members and methods in other classes and objects. • The various modifiers available in Java are static, final, abstract, native, and synchronized . • You must set the PATH variable of the operating system to the bin directory of the installation directory. • You need to use the javac fileName.java command to compile the fileName.java file. • You need to use the java fileName to execute the fileName.class file. ©NIIT Java Fundamentals Lesson 2B / Slide 24 of 24