27
SEMINAR ON JAVA

Seminar on java

Embed Size (px)

DESCRIPTION

basic concepts on java

Citation preview

Page 1: Seminar on java

SEMINAR ON JAVA

Page 2: Seminar on java

INHERITANCE

Page 3: Seminar on java

THE MECHANISM OF DERIVING A NEW CLASS FROM AN OLD ONE IS CALLED

INHERITANCE.

Page 4: Seminar on java

•THE OLD CLASS IS KNOWN AS BASE CLASS OR SUPER CLASS OR PARENT CLASS

THE NEW ONE IS CALLED THE SUB CLASS OR DERIVED CLASS OR CHILD CLASS

Page 5: Seminar on java

TYPES OF INHARITANCE

SINGLE

MULTIPLE

HIERARCHICAL

MULTI LEVEL

Page 6: Seminar on java

SINGLE INHERITANCE

•ONLY ONE BASE CLASS

Page 7: Seminar on java

MULTILEVEL INHERITANCE

GRAND FATHER

FATHER

CHILD

SUPER CLASS

INTERMEDIATE SUPERCLASS

SUB CLASS

Page 8: Seminar on java

A DERIVED CLASS WITH MULTILEVEL BASE CLASSES IS DECLARED AS FOLLOWSCLASS A {……………………}CLASS B extends A // first level{………….………….}CLASS C //second level{………….………….}

Page 9: Seminar on java

HIERARCHICAL INHERITANCE

Page 10: Seminar on java

EXAMPLE

Page 11: Seminar on java

HERE CERTAIN FEATURES OF ONE LEVEL ARE SHARED BY MANY OTHER BELOW THE LEVEL.

Page 12: Seminar on java

MULTIPLE INHERITANCE

Page 13: Seminar on java

OVERRIDING METHODSOVERRIDING CAN BE DONE

BY DEFINING A METHOD IN THE SUB CLASS THAT HAS THE SAME NAME,SAME

ARGUMENTS AND SAME

RETURN TYPE AS A METHOD IN THE SUPER CLASS.

THIS IS KNOWN AS OVERRIDING.

Page 14: Seminar on java

FINALIZER METHODS FINILIZATION IS JUST OPPOSITE

TO INITIALASATION. JAVA RUN-TIME IS AN AUTOMATIC

GARBAGE COLLECTING SYSTEM. IT FREES THE MEMORY RESOURCES

USED BY OBJECTS. BUT OBJECTS MAY HOLD OTHER

NON-OBJECT RESOURCES SUCH AS FILE DESCRIPTORS OR WINDOW SYSTEM FONTS.

Page 15: Seminar on java

THE GARBAGE COLLECTOR CANNOT FREE THESE RESOURCES.

IN ORDER TO FREE THIS WE USE FINALIZER METHOD.

THIS IS SIMILAR TO

DESTRUCTORS.

THE FINALIZER METHOD IS SIMPLY

FINALIZE()

Page 16: Seminar on java

ABSTRACT METHODSFINALIZER HELPS US NOT TO RE-

DEFINE THE METHOD IN SUB CLASS.

BUT TO DO THE OPPOSITE, i.e. REDEFINE THE METHOD IN SUB CLASS,WE USE THE MODIFIER

KEYWORD abstract IN THE METHOD DEFINITION

Page 17: Seminar on java

EXAMPLE

abstract class shape{………….………….abstract void draw();………….………….}

Page 18: Seminar on java

VISIBILITY CONTROL IT IS ALSO KNOWN AS ACCESS

MODIFIERS.THIS PROVIDES THREE TYPES OF MODIFIERS:

PUBLIC PRIVATE PROTECTED

Page 19: Seminar on java

PUBLIC ACCESS By simply declaring the variable

or method as public it is visible to entire class in which it is defined.

A variable or method which is declared as public has the widest possible visibility and

accessible everywhere.

Page 20: Seminar on java

EXAMPLE

public int number;public void sum( ){…………………………}

Page 21: Seminar on java

FRIENDLY ACCESS•When no access modifier is specified,the

member defaults to a limited version of public accessibility known as

“friendly” level of access.

•this makes fields visible only in the same package,but not in other packages.

Page 22: Seminar on java

PROTECTED ACCESS

The visibility lies in between the public access and friendly access.

The protected modifier makes the fields visible not only to all classes and sub classes in the same package but also to sub classes in other packages.

Page 23: Seminar on java

PRIVATE ACCESSThey enjoy the highest degree of

protection.They are accessible only with their own class.They cannot be accessed and inherited by sub classes.

The method declared as private behaves like a method declared as final.

It prevents the method from being sub classed.

Page 24: Seminar on java

PRIVATE PROTECTED ACCESS

A field can be declared with two key words private and protected together like:

Private protected int codenumber;

the visibility level is between the “protected” access and private access.

This makes the fields visible in all subclasses regardless of what package they are in

Page 25: Seminar on java

RULES OF THUMB

USE PUBLIC IF THE FIELD IS TO BE VISIBLE EVERYWHERE.

USE PROTECTED IF THE FIELD IS TO BE VISIBLE EVERYWHERE IN THE CURRENT PACKAGE AND ALSO SUBCLASSES IN OTHER PACKAGES.

USE “DEFAULT” IF THE FIELD IS TO BE VISIBLE EVERYWHERE IN THE CURRENT PACKAGE ONLY.

USE PRIVATE PROTECTED IF THE FIELD IS

Page 26: Seminar on java

TO BE VISIBLE ONLY IN SUB CLASSES,REGARDLESS OF PACKAGES.

USE PRIVATE IF THE FIELD IS NOT TO BE VISIBLE ANYWHERE EXCEPT IN ITS OWN CLASSES.

Page 27: Seminar on java

thank you