You are on page 1of 26

Lecture - 2

Date:08/10/2020
Encapsulation- is to make sure that "sensitive" data is
hidden from users.

Example --
Java Packages
A package in Java is used to group related classes. Think
of it as a folder in a file directory.

Packages are divided into two categories:

1.Built-in Packages (packages from the Java API)


2.User-defined Packages (create your own packages)
1.Built-in Packages

Syntax -
import package.name.Class; // Import a single class
import package.name.*; // Import the whole package

Import a Class
Example- import java.util.Scanner;
import java.util.*;

In the example above, java.util is a package,


while Scanner is a class of the java.util package.
To use the Scanner class, create an object of the class
and use any of the available methods found in
the Scanner class documentation. In our example, we will
use the nextLine() method, which is used to read a
complete line
Import a Package
Example- import java.util.* ;

2.User-defined Packages
Example

•Save the file as MyPackageClass.java, and compile it:


C:\Users\Your Name>javac MyPackageClass.java
•Then compile the package:
C:\Users\Your Name>javac -d . MyPackageClass.java
•This forces the compiler to create the "mypack" package.
•When we compiled the package in the example above,
a new folder was created, called "mypack".
•To run the MyPackageClass.java file, write the following:
C:\Users\Your Name>java mypack.MyPackageClass
• The output will be:
This is my package!
JAVA Inheritance

In Java, it is possible to inherit attributes and methods


from one class to another.

We group the "inheritance concept" into two categories:

1.subclass (child) - the class that inherits from another


class
2. superclass (parent) - the class being inherited from
To inherit from a class, use the extends keyword.
Inheritance can be defined as the process where one class acquires the
properties (methods and fields) of another. With the use of inheritance the
information is made manageable in a hierarchical order.

The class which inherits the properties of other is known as subclass (derived
class, child class) and the class whose properties are inherited is known as
superclass (base class, parent class).
Types of Inheritance
.
Example 1– Single Level Inheritance
A very important fact to remember is that
“Java does not support multiple inheritance”.
This means that “a class cannot extend more than
one class”.

Therefore following is illegal −


Example
public class extends Animal, Mammal{}

However, “a class can implement one or more


interfaces”,which has helped Java get rid of the
impossibility of multiple inheritance.
The final Keyword in Inheritance -----
If you don't want other classes to inherit from a class, use
the final keyword:
Overriding
The benefit of overriding is: ability to define a
behavior that's specific to the subclass type,
which means a subclass can implement a parent
class method based on its requirement.

In object-oriented terms, overriding means to


override the functionality of an existing method.
Overriding Example

Output---
Animals
can move
Dogs can
walk and run
Rules for Method Overriding 1
The argument list should be exactly the same as that of the
overridden method.
The return type should be the same or a subtype of the return
type declared in the original overridden method in the superclass.
The access level cannot be more restrictive than the overridden
method's access level. For example: If the superclass method is
declared public then the overridding method in the sub class
cannot be either private or protected.
Instance methods can be overridden only if they are inherited by
the subclass.
A method declared final cannot be overridden.
A method declared static cannot be overridden but can be re-
declared.
Rules for Method Overriding 2
A subclass within the same package as the instance's superclass
can override any superclass method that is not declared private or
final.
A subclass in a different package can only override the non-final
methods declared public or protected.
An overriding method can throw any uncheck exceptions,
regardless of whether the overridden method throws exceptions or
not. However, the overriding method should not throw checked
exceptions that are new or broader than the ones declared by the
overridden method. The overriding method can throw narrower or
fewer exceptions than the overridden method.
Constructors cannot be overridden.
Using the super Keyword----
When invoking a superclass version of an overridden
method the super keyword is used.
Example 3–Inheritance
Java Polymorphism

Polymorphism means "many forms", and it occurs when we


have many classes that are related to each other by
inheritance.

Inheritance lets us inherit attributes and methods from


another class.

Polymorphism uses those methods to perform different


tasks. This allows us to perform a single action in different
ways.
Example 1
Example 2

You might also like