0% found this document useful (0 votes)
91 views26 pages

Classes and Object

The document discusses classes and objects in Java. It explains what a class is and how it can contain data fields and methods. It provides an example Vehicle class with fields like passengers and fuelcap. It also demonstrates how to declare objects of the Vehicle class and access fields and methods through object references.

Uploaded by

Phannaro PL
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
91 views26 pages

Classes and Object

The document discusses classes and objects in Java. It explains what a class is and how it can contain data fields and methods. It provides an example Vehicle class with fields like passengers and fuelcap. It also demonstrates how to declare objects of the Vehicle class and access fields and methods through object references.

Uploaded by

Phannaro PL
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

Industrial Technical Instituted 2015

មេម ៀនទី៤

GMBI Class nig Object

1>mUldæanRKiHén Class
Class KWCalMnaMmYysMrab;kMnt;TrM g;rbs; Object .vakMnt;eGay data nig code sMrab;RbtibtiþeTAelI
data enaH . java eRbIkarkMnt;lkçN³ class EbbenHedIm,IbegáIt object . object KWCa instances én class

mYy.
1.1 TMrg;TUeTAén Class

ClassmYyRtUv)anRbkasedayeRbIBakü class . Class mYyGacmanTMrg;saMjauM . TMrg;TUeTAén class

mYymandUcxageRkamenH³
Class classname {
type instance-uariable1;
type instance-uariable2;
/ /..
type instance-uariableN;
type methodname1(parameter-list) {
/ / body of method
}
Type methodname2(parameter-list) {
/ / boody of method
}
/ / …
Type methodnameN(parameter-list) {
/ / boody of method
}
}

Data b¤GjatEdl)ankMnt;enAkñgu class mYyRtUv)anehAfa instance variables . code


RtUv)anpÞukkñug methods . Methods nigGBaØatenAkñgu class mYyRtUv)anehAfa members én class
.Methods TaMgGs; manTMrg;TUeTAdUceTAnig main( ) EdleyIg)aneRbIrhUtmkdl;eBlenH.
KYrkt;sMKal;faTMrg; TUeTAén class mYyminGackMnt;faRtUvman main( ) method eLIy.RKb; class
TaMgGs;rbs; Java minRtUv karman main( ) method eT. eyIgkMnt;eGayman main( )ebIsinCa class
enaHCacMnuccab;epþIménkmµviFI. elIsBIenH applets \tRtUvkar main( ) eLIy.

Page 1
Industrial Technical Instituted 2015

karbegáIt Class mYy


edIm,IbegáIt class eyIgnwgbegát class mYyEdlRbmUlpþMúBt’manGMBIyanynþ dUcCa rfynþtUc rfynþFM
CaedIm. Class enHmaneQµaHfa Vehicle ehIyvanigpÞúkBt’manbIerOgGMBIyanynþKWcnM YnGñkdMeNIrEdl vadwk
nigcMNuHeRbg ehIynigkareRbIeRbgKitCamFüm ¬KitCa miles kñúgmYy gallon¦. gallon KwCargVas;rgVal;
mYyrbs;GaemrickaMgEdl ! gallon = 3.7853 lIRt.
Vehicle class )ankMnt;nUv instance variables cMnYnbI Kw passengers, fuelcap nig mpg.

KYrkMnt;sMKal; fa Vehicle BMmu an method NamYyeLIy¬b:uEnþeyIgnigbBa©Úlvaqab;²enHehIy¦.


class Vehicle {
int passengers; // number of passengers
int fuelcap; // fuel capacity in gallons
int mpg; // fuel consumption in miles per gallon
}

karkMnt;Gtßny½ class mYybegáItnUvTinñ½yfµimUy. enAkñúgkrNIenHRbePTinñ½yfµImaneQaµHfa Vehicle.


eyIgnigeRbIeQµaHenHedIm,IRbkas objects énRbePT Vehicle.edIm,IbegáIt objects RbePT Vehicle mYy
eyIgeRbIXøadUcxageRkamenH³
Vehicle minivan = new Vehicle( ) ;// create a Vehicle object called minivan

bnÞab;BIXøaenHRbtIbtþikar eBlenaH minivan KwCa instance én Vehicle .dUecñHvamanrUbragBit


R)akdGaceRbIkar)an.eBleyIgbegáIt instance én class mþg²enaHeyIgkMBgu begáIt object mYyEdlmankar
cMlgnUvral;GBaaØtedayxøÜnvaEdl)ankMnt;kñúg class. dUecñHral; object én Vehicle mankarcMlgGBaaØt
edayxønÜ va Kw passengers, fuelcap nig mpg. edIm,IcUleRbIGBaaØtTaMgenH eyIgRtUveRbIsBaaØcMnuc(.).
sBaaØCab;eQµaHrbs; object CamYynigeQµaHrbs; member . TMrg;TUeTArbs;va Kw ³
object.member

]TahrN_ edIm,IknM t;téM leTAeGayGBaaØt fuelcap én minivan esµI !^ enaHeyIgRtUvsresrdUc


XøaxageRkamenH³
minivan.fuelcap = 16;

CaTUeTA eyIgGaceRbIsBØaacMnuced,Im,IcUleTAeRbIGBØaat nig method . enHCakmµvFi ImYymanlçNH


eBjeljEdleRbI Vehicle class :
/ * A program that uses the vehicle class .
Call this file vehicleDemo . java * /
class Vehicle {
int passengers ; // number of passengers
int fuelcap ; // fuel capacity in gallons
int mpg ; //fuel consumption in miles per gallon
}
// This class declares an object of type Vehicle .
class Vehicledemo {
public static void main ( String args [] ){Remembre , minivan
Vehicle minivan = new Vehicle ( ) ; //and sports refer to
Vehicle sportscar = new Vehicle ( ); //separate object .
int range1 , range2 ;

Page 2
Industrial Technical Instituted 2015

// assign values to instance variables (fields ) in minivan


minivan . passengers = 7 ;
minivan . fuelcap = 16 ; Notice the use of the dot
minivan . mpg = 21 ; operator access a member .

/ / assign values to instance variables (fields ) in sportscar


sportscar . passenger = 2 ;
spoetscar . fuelcap = 16;
sportscar . mpg =12;

// compute the range assuming a full tank of gas


range 1 = minivan . fuelcap * minivan . mpg ;
range2 = sportscar . fuelcap * sportscar . mpg;

System . out . println (“ Minivan can carry “ + minivan + “ with a range of “ +


range1);
System . out. println ( “ Sportscar can carry “ + sportscar . passengres + “ with
a range of “ + range2);

Object nImYyៗmankarcMlgGBØaatedayxønY vaEdlkMnt;kñúg class . tMélrbs;GBØaatenAkµug object


mYyGacxusKñaBItMélrbs;GBØaatenAkúñug object mYyepSgeTot .dUceyIg)aneXIjRsab;ehIyfa ទិន្នន្័យrbs;
minivan KWenAdac;ecjTinñymanenAkñúg sportscar . rUmxageRkamenHbgðajBITidæPaBenH .

passengers 7
minivan fuelcap 16
mpg 21
sports passengers 2
fuelcac 14
mpg 12

2/ rebobbegáIt object mYy


enAkñgú kmµviFIelIkmun XaøxageRkamenHRtUv)neRbIsMrab;begáIt object énRbePT Vehicle³
Vehicle minivan = new Vehicle ( ) ;

karRbtibtþiBIrtMNak;. dMbUgvaRbkasGBaaØmYyeQaµH minivan énRbePT


Vehicle.dMNak;TIBIrkarRbkas; GBaaØtbegáItnUvkaecMlgrUbén object ehykMnt;tMéleTAeGay minivan

edaybBaa¢k;CaRbePTén object enaH. lkçN³enHekIteLIgedaymankareRbI new. sBaaØnBVnþelx new


enHbegáItTItaMgkñgú memory sMrab; oject mYyehIybBaa¢kn; UvRbePT object enaH. kñúgPasa Java RKb; objects
én class RtUvdak;kñúgTItaMg edaykarpøas;bþÚrCanic©.XaøTaMgBIrxageRkamenH)anmkBIXøaxagelI
EdleKGacTTYl)anenaH³
Vehicle minivan; \\ declare reference to object
minivan = new Vehicle ( ) ; \\ allocate a Vehicle object

Page 3
Industrial Technical Instituted 2015

XaøenAelIbnÞat;TmI Yy minivan bBaa¢k;eTAeGay object RbPT Vehicle. minivan mantMél null


Edlmann½yfavaminTan;mankabBaa¢k;eTAeGay object enAeLIyeT. XaøenAbnaÞt;begáItnUv object fµIRbePT
Vehicle ehIykMnt;eTAeGay minivan.

3/GBaaØtRbePT Reference nigkarkMnt;tMél (Reference Variables and Assigment)


enAeBlkMnt;tMélGBaaØtEdlkarbBaa¢kn; uv object eTAeGayGBaaØtmYyeTotenaHsßanPaBEbbenHman
lkçN³saMjaMueRcIn BIeRBaHeyIgpøasbþÚr object nUvGBaaØtEbb reference EdlbBaa¢k;eTAeGayvaenaH.
plvi)akénPaBxusKañenHnaMeGaylT§plTTYl)anenaH pÞÚynigkarKiteXIjxøH². ]TahrN_ cUrBinitemIl
XaøxageRkamenH³
Vehicle car1 = new Vehicle ( ) ;
Vehicle car2 = car1;

RkeLkemIldMbUg vahak;dUcCagayKitfa car1 nig car2 bBaa¢k;eGay object BIrepSgKañEttamBit


enaHmindUecñaHeT. car1 nig car2 bBaa¢k;eGay object dUcKña. karkMnt;tMélén car1 eTAeGay car2 eFVIeGay
car2 bBaa¢k;eTAeGay object dUcKañ dUcnig car1 Edr. ehtuenH object GaceFVsI kmµPaBeday car1 b¤ car2.
]TahrN_ bnÞat;BIkarkMnt;tMél³
car1 . mpg = 26 ;

eRkayBIrRbtibtþikar Xøa println () TaMgBIrenH


Sysstem.out.println (car1.mpg ) ;
Sysstem.out.println (car2.mpg ) ;

nwgbgðajtMéldUcKña KW 26 .

Page 4
Industrial Technical Instituted 2015

4/ GMBI Method

Class CaFmµtarYmmanBIrFatu KWGBaØat nig methods . method KWCaRbFanbTFMCageKeRBaH Jacva pþl;


eGayvanUvGnúPaB nigPaBGacpøas;bÚþr)anya:geRcIn. Method mYyGacmanXøamYyb¤XøaeRIn. enAkñgú code Java
Edlsresr)anl¥enaHKW method nigmYy²eFVkI argarEtmYyKt; . Method nImYy²maneQµaHenHRtUv)aneRbIsMrab;
ehA method . TMrg;TUeTAén method RtUv)anbgðajdUcxageRkamenH³
ret-type name(parameter-list) {
/ /body of method
}

kñúgenH ret-type bBa¢ak;eGayRbePtTinñn½yEdlTtYl)anBI method . enHGacCaRbePTTinñn½yNamYy


b¤CaRbePT class EdleyIg)anbegáIteLIg. ebIsinCa method mineGaytMélmYyeTenaHRbePTTinñn½yrbs;va
Rbucdak;Ca void . ehIyeQñaHrbs; method RtuvbBa¢ak;tamryH name .
parameter-list KWCaes‘réI nRbePTTinñn½ynig identifiers Ejkdac;BIKñaedaysBaØaek,ós. )a:ra:Em:RtKWCa GBaØat

EdlTTYltMélrbs; arguments bBaÚn¢ eTAkan; method enAeBlEdlvaRtUv)anehAmkeRbI. ebIsinCa


method Kµan)a:ra:Em:RteT enaH parameter-list KWBm
uM anGVITaMgGs; ( TeT ) .

4/1 karbEnßm method mYyeTAkñúg class eQñaH Vehicle

Method én class myYCaFmµtaGaceRbI)an nigpþl;karcUleTAeRbI data rbs; class. enAkñgú ]TahrN¾


elIkmun)anKNnacMgaycrénrfynþedayKuntMéleRbIR)as;eRbg CamYynwgcMNuHeRbgebs;vaenaHBumM anlkçNH
RbesIreLIykñúgdMeNaHRsay. karKNnacMgayénrfynþcr)an EdleFVIeGaymanlkçNHl¥RbesIrenaHKWCa
Vehicle class xøÜnva. karbEnßm method mYyeTAkñúg Vehicle sMrab;KNna cMgaycrenaHKWCakarbegáInnUvTMrg;

object-oriented eTAeGay class .]TahrN¾ kMEnERbfµién Vehicle man method mYyeQµaH range()

EdlbgðajGMBIcMgaycrényanynþ .

Page 5
Industrial Technical Instituted 2015

/ / Add range to Vehicle


class Vehicle {
int passengers; / /numberof passengers
int fuelcap; / / fuel capacity in gallons
int mpg; / / fuel consumption in miles per gallon
/ / Sisplay the range .
void range ( ) { The range () method is contained
within the Vehicle class.

System.out.println(:”Range is “ + fuelcap * mpg) ;


}
}
class AddMeth {
public static void main (String args [ ] ) {
Vehicle minivan = new Vehicle (); Notice that fuelcap and mpg
Vehicle sportscar = new Vehicle ();are used directly,without the
dot perator.
int rangel, range2 ;
/ / assign values to instance variables (fields) in minivan
minivan.passengers = 7 ;
minivan.fuelcap = 16 ;
minvanl.mpg = 21 ;

/ / assign values to instance variables (fields) in sportscar


sportscar.passengers = 2 ;
sportscar.fuelcap = 14 ;
sportscar.mpg = 12 ;

System.out .print (“Minivan can carry “+minivan.passengers + “. “) ;


minivan.range (): / / display range of minvan
Systemlout.print (“Sportscar can carry “ +
sportscar can carry “ . “) ;
sportscar.range() : / / display range of sprotscar.

4/2 kareGaytMélBI Method mYy

CaTUeTAvamanlkçxNÐBIrEdlbNþaleGay method mYyeGaytMél . lkçxNÐTImYy dUc method eQµaH


range () EdlyIg)aneXIjenaHkñúg]TahrN¾munenH kalNasBaØaXñabbiT “}” rbs; method )anCYbRbTH .

lkçxNÐTBI IrkalNaXøa return )anRbtibtiþkar . return 2manBIrTMrg;KWmsY Mrab;eRbIkúñg method RbePT void nig
mYyeToteRbIsMrab;eGaytMél.
enAkñgú method RbbePT void eyIgGaceFVikarbBa©b; method mYyPøam²edayeRbItrM g; return dUcxag
eRkamenH ³
kalNaXøaenHRbtibtiþkar eBlenaHkarepÞógpÞat;kmµviFInwgeGaytMéleTAkan;GñkehAeRbIeday
rMlgecalnUv code EdlenAesssl;kñúg method. ]TahrN¾ cUrsegát method enH³
void myMeth ( ) {
int i ,
for ( i = 0 , i < 10 , i + + ) {
if ( i = = 5) return , // stop at 5
System . out . println ( ) ,
}
}

Page 6
Industrial Technical Instituted 2015

kñúgenH dMeNIrdEdl² for nwgdMeNIrkarBI 0 dl; 5 b:ueNÑaH eRBaHeBlEdl i esIµ 5 enaH method eGay
tMélbBa¢b;. Method eGaytMélmYyeTAkan;GñkehaAeRbIenaHmanTMrg;dUcxageRkam³
return value;

kñúgenH value CatMélEdlvaeGay.eyIgGaceRbI return eGaytMéledIm,IEklMGkarGnuvtþén method eQµaH


range( ).

]TahrN¾xageRkamenHeFVIkarpøas;bþúr range0 edIm,IeGaytMélcMgaycrényanynþRbesIrCageGayvabgðaj


tMél.
// use a retun value
class Vhicle {
int passengers ; // number of passengers
int fuelcap ; // fuel capacity in gallons
int mpg ; // fuel consumption in miles per gallon

// Return teh range.


int range ( ) { Return the range
return fuelcap  mpg ; For a give vehicle
}
}
class RetMeth {
public static void main ( String args [ ] ) {
Vehicle minivan = new Vehicle ( ) ;
Vehicle sportscar = new Vehicle ( ) ;
int rangel , range2 ,
// assign values to instance variables ( fields ) in minivan
minivan . passengers = 7 ,
minivan , fuelcap = 16 ,
minivan . mpg = 21 ,

// assign values to instance variables ( fields ) in sport scar


sportscar . passengers = 2 ,
sportscar . fuelcap = 14 ,
sportscar . mpg = 12 ,
// get the ranges
range1 = minivan . range ( ) , Assign the value
range2 = sportscar . range ( ) , returned to a variable.

System . out. println ( “Minivan can carry ” + minivan . passengers +


“ with a range of ” + rangel + “ Miles ” ) ,
System . out . println ( “Sportscar can carry ” +
sportscar . passengers + “ with a range or ” + range2 + “ miles ” ) ,
}
}

4>3 karRbI)a:ra:Em:Rt
eKGacbBa¢ÚntMélmYy b¤eRcIneTAkan; method mYyenAeBlvaRtUv)anehAeRbI. tMélmYyEdl bBa¢Ún
eTAkan; method enaHehAfa argument. enAkñúg mehtod GBaØatEdlTTYl argument ehAfa )a:ra:Em:Rt.
)a:ra:Em:RtRtUv)anRbkalenAxagkñúgsBaØavg;RkckbnÞab;BIeQµaHrbs; method. EbbbTénkarRbkal)a:ra:Em:Rt
KWdcU KñaeTAnwgkareRbIGBaØatEdr.

Page 7
Industrial Technical Instituted 2015

Double fuelneeded (int miles) {


Return (double )miles / mph;
}

KYrkt;sMKal;fa method enHeGaytMélmYyCaRbePT double. enHmansr³sMcan;Nad; edaysarcMnYneRbgEdl


RtUvkarsMrab;cMgaycrkMNt;enaHGacminEmmCacMnYnKt;KU.
Vehicle class TaMgmUlEdl)anbBa©Úl fuelneeded() RtUv)ansresrdUcxageRkamenH

// add a parameterized method that computes


// the fuel required for a given distance.
Class Vehicle {
Int passengers; // number of passengers
Int fuelcap; // fuel capacity in gallons
Int mpg; // fuel consumption in mides per gallon
// Return the range.
Int range() {
Reture fuelcap * /mpg;
}
}
Class compFuel {
Public static void main (string args[] ) {
Vehicle minivan =new Vehicle ();
Vehicle sportscar =new Vehicle ();
double gallons;
Int dist = 252;

/ / assign values to instance variables (fields) in minivan


minivan. Passengers =7;
minivan. Fuelcap =16;
minivan. Mpg =21;

/ / assign values to instance variables (fields) in sportscar


Sportscar. Passengers =2;
Sportscar. Fuelcap =14;
Sportscar. Mpg =12;

Gallons =miniva . fuelneeded (dist) ;


System. Out .println (“to go “ + dist + “ miles sportscar needs “
+ gallons + “ gallons of fuel. “)
;
Gallons =sportscar. Fuelneeded (dist) ;
System. Out. Println (“to go “ + dist + “miles sportscar needs “
+ gallons + “gallons of fuel.”);
}
}
5> GMBI Constructors

enAkñgu ]Tarh_xagedIm GBaØaténobject RbePT Vehicle nimYy²RtUvEtkMnt;téM lCaFmµtaenHCa


]TahrN¾EdleRbI)a:ra:Em:RtBIr. karRbkas)a:ra:EmRtnimYy²EjkecjBIKñaedayeRbI sBaØaek,ós. Class eQµaH
Factor man method mYy KW isFator( ) EdlkMnt;nUv)a:ra:Em:RtTImYyCapl KuNktþaén)a:ra:EmRtTIBIr.

class Factor{
boolean isFactor ( int a, int b ) {
if (( b&a ) = = 0 ) return true,
else return false ,
}
}
class IsFact {
public static void main (String args [ ] ) {

Page 8
Industrial Technical Instituted 2015

Factor x = mew Factor ( ) ,

if ( x . isFactor (2, 20 ) )
System. out. println ( “ 2 is factor ” ) ,
if ( x . isFator ( 3, 20 ) )
System. out. println ( “ this won’t be displayed ” ) ,
}
}

eBlenH eyIgGaceRbI method Edlman)a:ra:EmRt edIm,IbEnßmlkçN³fµIeTAeGay class eQµaH Vehicle


KWlT§PaBKNnacMNHu eRbgEdlRtUveFVIdMeNIrelIcMgaycrkMnt;mYy. method fµIenHmaneQµaHfa fuelneeded( ).
method enHTTYlykcMnYnKitCa miles EdleyIgcg;ebIkbr ehIyeGaycMnYn gallons éneRbgEdltMrUvkar.

method eQµaH fuelneeded( ) RtUv)ansresrdUcxageRkamenH³

edaysresrlMdab;XøadUcxageRkamenH³
innivan. Passengers= 7;
innivan. Fuelcap = 16;þ
innivan. Mpg = 21;

lMnaMEbbenHminRtUv)aneKeRbIkúñgkarseesr Code rbs; Java tamlkçN³CMnajeLIgvij. manmeFüa)ay


gayRsYlmYyEdlGacbMeBjnUvkic©karenH KW Constructor.
Constructor eRbIsMrab;kMNt;tMéldMbUgeTA[ Object enAeBl)anbegáIteLIg. vamaneQµaHdUceTA nwg

eQµaH Class rbs;va ehIyvaRsedógeTAnwg method Edr. eTaHCaya:gNak¾eday Constructor BMmu an bB¢aak;
BIRbePTTinñn½yeT,Iy. CaFmµtaeyIgeRbI Constructor mYysMrab;knM t;tMéldMbUgeTAeGayGBØaat EdlkMNt;
eday Class b¤edVIkarNamYy EdltMrUv[begáIt Object manlkçN³eBjelj.
RKb; Class TaMGs;Etgman Constructor minfaeyIg)anbegáIt b¤km¾ in)anbegáIteLIy eRBaH Java pþln; Uv
Constructor EdlmanlkçN³ default edaysV½yRbvtþ ehIykMNt;tMéltMbUgeTA[GBØØaatTaMGs;esµI sUnü.

eTaHCaya:gNak¾eday kalNaeyIgbegáIt Constructor edayxøÜneyIg eBlenaH Constructor EdlmanlkçN³


default BMG
u aceRbI)aneT.eTaHCa]TahrN_mYyEdlbgðajBIkareRbI Constructor.
// A simple constructor.
Class MyClass {
X = 10;
}
}
Class consDemon {
Public static void main ( string args []) {
MyClass t1 = new MyClass ();
MyClass t2 = new MyClass ();
Double vol;
System. Out. Println ( t1. x + “ “ + t2. x);
}
}

5>1 Constructors eRbI)a:ra:EmRt


Page 9
Industrial Technical Instituted 2015

enAkñgú ]TahrN_munenH Constructor Edl)aneRbIenaHBumM an)a:ra:EmRteLIy. eTaHCakñúgsßanPaB


xøHvamanlkçN³l¥RbesIlrk¾edayEtCYnkaleyIgRtUvkar Constructor mYyEdlGacTTYl
yk)a:r:aEmRtmUyeRcIn. ]TahrN¾ eBlenH MyClass man constructor mYyEdl eRbI)a:ra:EmRt ³
//A parameerized constructor.
Class MyClass{
Int x;
MyClass(int i)}
X =I ;
}
}
Class parmConsDemo {
Public static void main(String args []) }
MyClass t1 = new MyClass(10);
MyClass t2 =new MyClass (99);
Double vol;
System.out.println (t1.x +” ” + t2.x);
}
}

5>2 karbEnþm constructor mUyeTAkñúg class eQµaH Vehicle

eyIgGacEklMG Vehicle class edaybEnßm constructor mUysMrab;knM t;


tMéldMbUgedaysV½yRbvtþ cMeBaH passengers,fuelcap nIg mpg kalNa object mUyRtUv)anbegþiteT,Ig.
eyIgRtUvcMfa etI object én Vehiclebe begþIteT,Igya:gdUcemþc?
// Add a constructor.
Class Vehicle {
Int passengers; //number of passengers
Int fuelcap // fuel capacity in gallons
Int mpg; // fuel consumption in miles per gallon
// This is a constructor for vehicle .
Vehicle (int p, int f, int m) }
Passengers = p ;
Mpg =m;
}
// Return the range.
Int range ( ) {
Return fuelcap * mpg ;
}
// Compute fuel needed for a given distance.
Double fuelneeded (int miles) {
Return (double ) miles , mpg;
}
}
//class VehconsDemo {
Public static Void main (string args [] ) }
// construct complete vehicles
Vehicle minivan = new vehicles
Vehicle sportscar = Double gallons;
int dist = 252 ;
gallons = minivan.fuelneeded (dist) ;
System . out . printlh (“To go” + dist +
“ miles minivan needs” + gallons + “ gallons of fuel .” ) ;
gallons = sportscaer . fuelneeded (dist) ;
System . out .printlh (“To go “+ dist +” miles sportscar needs”
+ gallons + “gallons of fuel.”) ;
Page 10
Industrial Technical Instituted 2015

}
}

6>kareRbIBakü this
vamansar³sMxan;Nas;cMeBaHkareRbIBakü this . kalNa method mYyRtUv)anehAeRbIenaHvabBa¢Ún
argument mYyedaysV½yRbvtiþ EdlCakarbBa¢ak;mYyeTAeGay object kMBugeRbI ( KWCa object Edl mothod

enaHRtUv
RtYvehAeRbI). karbBa¢ak;enHKWCa this . edIm,Iyl;bBaðarenH CabzmcUrsegátkmµviFImYyEdlbegáItnUv class
mYymaneQµaHfa Pwr . Class enHGacKNnalTÐplénmYycMnYnelIkCasV½yKuNéncMnYnKt;³
class Pwr {
double b ;
int e ;
double val ;
Pwr ( doule base , int exp ) {
b = base ;
e = exp ;
val = exp ;
if ( exp = = 0 ) return ;
for ( ; exp >0; exp - - )
val = val * bass ;
}
double getPower() {
return val ;
}
}
class DemoPwr {
public static void main ( String args [ ] ) {
Pwr x = new Pwr ( 4. 0, 2 );
Pwr y = new Pwr ( 2 .5, 1 );
Pwr z = new Pwr ( 5. 7, 0 );
System . out . printlh ( x.b + “raised to the” + x .e +
“power is” + x.getPower ( ));
System . out . printlh ( y.b + “raised to the” + y . e +
“power is” + y.getPower ( ));
System . out . printlh (z.b + “raised to the” + z . e +
“power is” + z.getPower ( ));
}
}

enAkñgú Method mYy, members epSgeTotrbs; class GaccUleTAeRbIedaypÞal; nigedayKµanbBa¢ak;eQµaH class


b¤ object NamYyeT,Iy. ehtuenH enAkñgú get Power( ), Xøa return val;
mann½yfakarcMlg val manTMnak;TMngCamYynwg object kMBugeRbIEdlRtUveGaytMél. eTaHCaya:gNak¾eday
XøadUcKñadEdlenHGacsresreT,IgvijCa³
return this. val;

kñúgenH this sMedAeTAelI object Edl get Power( ) )anehAeRbI. ehtuenH this.val sMedAeTAelIkarcMlg val én
object enaH. karsresrXøaedaymineRbI this RKan;EtviFIsresrkat;b:eu NÑaH.

enHKWCa Pwr class TaMgmUlEdlsresreT,IgedaymankarbBa¢ak;Bakü this ³


class Pwr {
double b;
Page 11
Industrial Technical Instituted 2015

int e;
double val;
Pwr (double base, int exp) {
this.b = base;
this.e = exp;
this.val = 1;
if (exp = = 0 ) return;
for ( ; exp>0; exp--)
this.val = this.val * base;
}
double getPower( ) {
return this.val;
}
}

CakarBitNas; KµanGñksresrkmµviFI Java NaEdlsresr Pwr dUc)anbgðajenHeT


eRBaHvaKµan)anplGIV eT,Iy ehIyTMrg;TUeTAhak;dcU CagayNas;. eTaHCaya:gNak¾eday this
manplRbeyaCn_xøHEdr. ]TahrN_ k,ÜnsMenr Java GnuBaØateGayeQµaHrbs;)a:ra:Em:Rt b¤GBaØatkñúg (local)
maneQµaHdUceTAnwgeQµaHrbs;GBaØatxag eRkA (global).

kalNabBaðaenHekIteT,IgenaHeQµaHGBaØatkñúgbM)aMgeQµaHrbs;GBaØatxageRkA. eyIgGaccUleRbI
GBaØatEdlbM)aMg edayeFIVkarbBa¢ak;tamry³Bakü this. ]TahrN_ ³
Pwr (double b, int e) {
this.b = b;
this.e = e;

val = 1;
if (e = = 0 )
return;
for ( ; e>o; e--)
val = val * b;
}

7> karbM)at;sMNl;nig Finalizers


edaysar objects RtUv)andak;kñúgTItaMgpÞúkén memory EdlTMenrtamry³énkareRbI new Memory
minEmn manTMhMminkMnt;enaHeT ehIy memory EdlTMenrGaceKeRbIGs;.
ehtuenHvaGacnaMeGaymanbBaðasMrab;kareRbI new edaysarEtman memory TMenrRKb;RKan; edIm,IbegáIt
objects EdlRtUvkar. cMeBaHehtuplenH smasPaBsMxan; mYyénKMeragkarN_dak;TItaMgEdlGacpøas;bþúr)an

KWeFIVeGay memory TMenrdUcedImvijBIkEnøgEdlman object mineRbIR)as;bgáeGay memory


GaceRbICafInµ UvTItaMgenaH. enAkñúgPasasMenrkmµvFi ICaeRcIn karsMGatTItaMgEdl)an
eRbIeGayeTACaTItaMgsMenrenaHRtUveFIVeT,Igtamry³énkarsresrbBa¢ak;. ]TahrN_ enAkñúg C++
eyIgeRbIsBaØaN nBVnþ delete edIm,IeGay memory TMenrnUvTItaMgEdl)aneRbIenaH. eTaHCaya:gNak¾eday Java
eRbIlnM aMepSgKña eBalKWvaeFIVeGay memory TMenredaysV½yRbvtþi. viFIenHehAfa karbM)at;sMNl; ( garbage
collection).

Page 12
Industrial Technical Instituted 2015

eKGackMNt; method mYyEdlRtUv)aneRbImunnwgbM)at;ecalén object tamry³ garbage collection.


Method enHmaneQµaHfa finalize( ) ehIyvaRtUv)aneRbIsMrab;Fana object mYybBa©b;edayGs;TaMgRsug.

]TahrN_ eyIgGaceRbI finalize( ) edIm,IeGayR)akdfa file mYy Edl)anebIk ehIyCarbs; object


enaHRtUvEtbiT.
enAxagkñúg finalize ( ) method eyIgnwgkMnt;nUvskmµPaBEdlRtUveFIV munnw object mYyRtUvbM)at;.

finalize( ) method manTMrg;TUeTAdUcxageRkam³


protected void finalize( ){
/ / finalization code here
}

vamansar³sMxan;Nas; edIm,Iyl; finalize( ) method EdlRtUvehAmkeRbImun garbage collection.


vamin RtUv)anehAmkeRbIeT enAeBlEdl object ecjputBI scope.
]TahrN_ ³
/ / demonstrate the finalize ( ) method.
class FDemo {
int x;
FDemo (int i) {
x = i;
}
/ / called when object is immediately destroyed.
protected void finalize ( ) {
system. out. println (“Finalizing” + x);
}
/ / generates an object that is immediately destroyed.
void generator ( int i) {
FDemo o = new FDemo (i);
}
}
class Finalize {
public static void main ( String args [ ] ) {
int count;

FDmeo ob = new FDemo (0) ;


/* Now, generate a larg number of objects.
At some point, garbage collection will occur.
Note: you might need to increase the
number of objects generated in order
force garbage collection. */
for ( count = 1; count < 100000; count + + )
ob. generator (count);

}
}

Page 13
Industrial Technical Instituted 2015

8> GMBI Methods Overloading


enAkñgú Pasa Java vaGacman methods BIr b¤eRcInkñúg class mYyEdlmaneQñaHdUcKña EtmankarRbkas
)a:ra:Em:RtepSgKña . lkçN³EbbenHeKehAfa method overloading . Method overloading KWCaviFImYykñúg
cMeNamviFICaeRcInEdl Java GnuvtþnUvlkçN³ polymorphism .
Method overloading RtUvEtxusKñaedayRbePTTinñn½y b¤cMnYn)a:ra:Em:Rt . enAeBlEdl overloaded

method )aneGaytMélRbePTTinñn½yepSgKña karEdleGaytMélRbePTTinñn½yEtmYyKt;enA vaminRKb;RKan;

sMrab;sMKal;nUvkarxusKñaén method )aneLIg . kalNa Java ehA overloaded method mkeRbIenHvaRbtibtþi


eTAelI method NaEdlman)a:ra:Em:RtRtUvKñanwg argument eRbIkgñú eBlehA .
enHCa]bkrN×mYyEdlbgðajBIkareRbI method overloading:
/ / demonstrate method overloading.
Class Overload
void ovlDemo () {
System.out.println (“No parameters” );
}
/ / overload ovlDemo for one integer parameter.
void ovlDemo (int a) {
System.out.println (“One perameter: ” + a);
}
/ / overload ovlDemo for one integer parameter.
Int ovlDemo (int a, int b) \ {
System.out.println (“Two parameters :” + a + “ ” + b);
Return a + b;
}
/ / overload ovlDemo for one integer parameter.
Double ovlDemo (double a, double b) {
System.out.println (“Two parameters :” + a + “ ” + b);
Return a + b;
}
}
Class overloadDemo {
Public static void main (String args []) {
Overload ob = new overloae ();
Int reaI;
Double tesD;
/ / call all versions of ovlDemo()
Ob. ovlDemo (); System.out.println ();
Ob. ovlDemo (2); System.out.println ();
resI = ob. OvlDemo (4, 6);
System.out.println (“Result of ob. ovlDemo (4, 6):” + resI);
System.out.println ();
resD = ob. ovlDemo(1.1, 2.2);
System.out.println (“Result of ob. ovlDemo (1.1, 2.2):” + resI);
}
}

KYrkt;sMKal;faovlDemo() BIrdMbUgeGaytMélCa void ehIy method BIrbnÞat;eToteGay mYytMél.


lkçN³enHBitCaRtWmRtUv b:nEnþdUceyIg)anBnül;rcY ehIyfakaeGaytMélRbePTTinñn½ymYy vaminRKb;RKan;eT
ehtuenHkarBüayameRbI ovlDemo() TaMgBIrenaHanaMeGayman errors ekIteLIg.
/ / one ovlDemo (int) is OK.
Void ovlDemo (int a) {
Return-type minGaceRbI
CaPaBxusKña enAkñúgPage 14
method overloading
Industrial Technical Instituted 2015

System.out.println (“One perameter: ” + a);


}
/* Error! Two ovlDemo (int) s are not ok even though
Return types differ.
*/
int ovlDemo (int a) {
System.out.println (“One perameter: ” + a);
Return a * a;
}

Javapþlk; arbMElgRbePTTinñ½yedaysV½yRbvtþ. karbMElgTaMgenHk¾)anykeTAeRbICamYy)a:ra:Em:Rt én


overloaded method Edr. cUrsegátkmµvFi IxageRkamenH ³
// Automatic type conversions can affecf
// overloaded method resolution.
Class Overload2{
Void f ( int X ) {
System. out. Println ("Inside f(int) : " + X) ;
}
Void f (double X) {
System. out. Println ("Inside f (double) : " + X ) ;
}
}
Class TypeCony {
Public static void main (String args [ ] ) {
Overload2 ob = new Overload2 ( ) ;
Int I = 10 ;
Double d = 10.1 ;
Byte b = 99 ;
Short s = 10 ;
Float f = 11.5F ;
Ob. F (i ) ; // class ob.f (int)
Ob. F (d ) ; // class ob.f (double)
Ob. F (b ) ; // class ob.f (int) _ _ type conversion
Ob. F (s ) ; // class ob.f (int) _ _ type conversion
Ob. F (f ) ; // class ob.f (double) _ _ type conversion
}
}

lT§plénkmµviFxI agelI)anbgðajdUcxageRkamenH³
Inside f ( int ) : 10
Inside f ( double ) : 10.1
Inside f ( int ) : 99
Inside f ( int ) : 10
Inside f ( double ) : 11.5

9> GMBI Overloading constructors


dUcnwg method Edr> constructor GacmaneRcInenAkñúg class mYy. skmµPaBenHGaceGayeyIg begáIt
objects tamviFIepSg²Kña. ]TahrN¾ cUrsegátkmµvIFIxageRkamenH³
// Demonstrate an overloaded constructor.
Class MyClass {
Int X ;
MyClass ( ) {
System. out. Println (" Inside MyClass ( ) . " ) ;
X = 0 ;
}
Page 15
Industrial Technical Instituted 2015

MyClass (int I ){
System . out .println ( “Inside MyClass(int). “);
X=I;
}
MyClass(double d) {
System .out . println ( “Inside MyClass(double).”);
X=(int) d;
}
MyClass(int I , int ,j ) {
System .out .println ( “Inside Myclass (int , int ). “);
X=I * j ;
}
}
Class overloadconsDemo {
Public static void main (string args[ ] ) {
Myclass t1`= new Myclass();
Myclass t2 = new Myclass (88);
Myclass t3 = new Myclass (17 .23 );
Myclass t4 = new Myclass (2.,4);
System .out . println ( “t1 . x : “+ t1 .x);
System .out . println ( “t2 . x : “+ t2 .x );
System .out . println (“t3 . x : “+ t3.x );
System .out . println ( “t4 . x : “+ t4 . x );
}
}

sar³sMxan;én overloaded constructor KwGaceGay object mYykMnt;téM ldMbUgeTAeGay object mYy


)an.cUrsegátkmµvFi IxageRkamenHEdleRbISummation class edIm,IKNnaplbUkéncMnYnKt;;.
// initialize one object with another .
Class summation
Int sum ;
// construct from an int
Summation (int num) {

Sum =0;
For (int i=1 ; I < = num ; I ++)
Sum + =i;
}
//construct from another object .
Summation (summation ob ) {
Sum = ob . sum ;
}
}
Class sumDemo {
Public static void main (string args [ ] ) {
Summation s1 = new summation (5);
Summation s2 = new summation (s1);
System . out . println (“s1 . sum : “ + s1 . sum);
System . out . println (“s2 . sum : “ + s2 . sum);
}
}

lTæplénkmµviFxI agelIenH³
s1. sum : 15
s2. sum : 15

Page 16
Industrial Technical Instituted 2015

10> karbB¢ÚantMél objects eTAeGay methods


rhYtmkdl;eBlenH eyIg)aneRbIRbePTTinñn½yTMrg;gaycMeBaH)a:ra:EmRtbBa¢ÚneTAeGay method.eTaHCaya:g
Nak¾eday eyIgk½¾GaceRbI object bB¢ÚaneTAeGay method )anEdr.Cak;EsþgcUrsegátkmµvFi IxageRkamenH
EdlpÞúkTMhMblock bIvimaRt.
// object can be passed to methods
Class block {
Int a, b, c ;
Int volume ;
Block (int I, int j , int k ) {
A=I;
B=j;
C=k;
Volume =a* b* c ;
}
// Return true if ob define same block.
Boolean sameVolume (block ob ) {
If ( ob . a= a) & (ob. B = b )&( ob.c ==c))
return true;
}
//return true if ob has same block .
else
return false;
}
}
class passob {
public static void main (string args [ ] ) {
block ob1 = new Block (10 , 2 , 5 );
block ob2 = new Block (10 , 2 , 5 );
block ob3 = new Block (5 , 5 , 5 );
system .out . println ( “ob1 same dimensions as ob2 : “ +
ob1. sameBlock (ob2));
system .out . println ( “ob1 same dimensions as ob3 : “ +
ob1. sameBlock (ob3));
system .out . println ( “ob1 same vulume as ob3: “ +
ob1. samevlume (ob3));
}
}
kmµviFIenHeGaylTæpldUcxagRkam ³
obl same dimensions as ob2: true
obl same dimensions as ob3: false
obl same volume as ob3: true

CaTUeTA vamanBIvFi IEdlPasakMuBüÚT½rGacbBa¢Ún argument mYyetAeGaydMeNIrkartYc²bnþbnÞab;eTot.


viFeI nHehAfa call-by-value. viFIenHcMlgtMélrbs; argument mYyeTAeGay)a:ra:EmRténdMeNIrkartUc². ehtu
enHkarpøas;bþÚrtMélEdl)aneFVIeTAelI)a:ra:EmRtBMmu an\TæiBlelI argument Edl)aneRbIeT,Iy. viFITIBIr
argument mYyRtUv)anbBa¢ÚntMélehAfa call-by-reference. enAkñúgviFIenH GBaØat reference eGay argument

¬minEmnCatMélebs; argument¦ RtUvbBa¢ÚneTAeGay)a:ra:EmRtenaHeT,Iy. enAxagkñúgtMeNIrkargar tUc²enaH


reference enHRtUv)aneRbIsMrab;bBa©ÚleTAeGay argument Edl)ankmNt;enAkñg ú karehAeRbI.

Page 17
Industrial Technical Instituted 2015

enH)ann½yfakarpøas;bþÚrtMélEdleFIVeTAelI)a:ra:EmRtnwgeFVeI Gayb:HBal;dl; argument EdleRbIenAkñúg tMeNIrkar


garenaH.
enAkñgú Pasa Java kalNaeyIgbBa¢ÚntMélRbePTTinñn½yTMrg;gayeTAeGay method enaHvabBa¢ÚnEttMél
b:ueNÑaH. ehtuenHGVeI kIteT,IgcMeBaH)ara:EmRtEdlTTYlnUv argument BMumanb:HBal;dl;xageRkA method eT,Iy.
Cak;EsþgcUrsegátkmµvFi IxageRkamenH ³
// Simple Types are passed by value.
class test {
// This method causes no change to
// the arguments used in the call.
void no change (int i , int j) {
i = i + j ;
j = - j ;
}
}
class call by value {
public static void main (string args [ ] ) {
test ob = new test ( ) ;
int a = 15 , b = 20 ;
system.out.println (“a and b before call : “+ a + “ “ + b) ;
ob. no change (a , b) ;
system.out.println (“a and b after call : “ + a + “ “ + b) ;
}
}

lTæplénkmµviFeI nHKW
a and b before call : 15 20
a and b after call : 15 20

RbmaNviFIEdlekIteT,IgenAkñúg no change ( ) BMmu an\TæiBlelItMélrbs; a nig b Edl)aneRbIeBlehA


method enaHeLIy.

eBleyIgbBa¢nÚ object mYyeGayeTA method enaHeFVIeGaypøas;bþÚrsßanPaB eRBaH


objectsRtUvbBa¢nÚ Ca reference . KYrcgcaMfakalNaeyIgbegáItGBaØatmYyénRbePT class KW eyIgbegáItEt
referencemYysMrab; object mYyb:ueNÑaH. ehtuenHeBleyIgbBa¢Ún reference enHeTAeGay method

mYy)a:ra:Em:RtEdl TTYlBIva någmanlkçN³Ca reference sMrab; object dUcKñak¾dUceTAnåg argument Edr.


enH)ann½yfa objent RtUvbBa¢ÚneTAeGay method edayeRbIlkçN³ call-by-reference.
kareFVIeGayERbRbYleTAelI objent enAxagkñúg method )aneFVeI Gayb:HBal;dl; object EdleRbICa
argument. cUrsegátkmµviFIxageRkamenH ³

// objects are passed by reference .


class Test {
int a ; b ;
Test (int I , int j ) {
a = I ;
b = j ;
}
// pass an object. Now, ob . a and ob . b in object
// used in the call will be changed.
void change (Test ob ) {
Page 18
Industrial Technical Instituted 2015

ob . a = ob . a + ob . b ;
ob . b = -ob . b ;
}
}
class CallByRef {
public static void main (String args [ ] ) {
Test ob = new Test (15 , 20 ) ;
System. out. println (“ob . a and ob . b after call :” +
ob . a + “ ” + ob . b ) ;
ob . change (ob) ;
System. out. println (“ob . a and ob . b after call :” +
ob a + “ ” + ob . b ) ;
}
}

kmµvFi IenHeGaylT§pldUcxageRkam³
ob . a and ob . b before call : 15 20
ob . a and ob . b after call : 35 -20

11/ kareGaytMélCa Objects


Method mYyGaceGaytMélCaRbePTTinñn½yNamYy ehIynigRbePT class pgEdr.

]TahrN_ class eQµaH ErrorMsg GaceRbIsMrab;raykarN_ errors. Method rbs;vaeQµaH


get ErrorMsg() eGaytMélCa object én String Edmankarerobrab;nUv error man edayEp¥kelI code én error

Edlva)anbBa¢ÚleTA.
// Returning a String object .
class ErrorMsg {
String msgs[] = {“output Error”,“Input Error “,“Disk Full”,“Index out–of-
Bounds”};
// Return the error message. Return an object of
String getErrorMsg (int i) { type String.
if (i >=0 & i < msgs. length )
return msgs [ i ] ,
else
return “Invalid Error Code”

}
}
class ErrMsg {
public static void main (string args[]) {
ErrorMsg err = new ErrorrMsg ();
System. out. println (err. getErrorMsg (2) );
System . out . println (err . getErrorMsg (19));

}
}

lTæplénkmµviFIxagelI)anbgøajdUcxagenH
Disk Full
Invalid Error Code.

Page 19
Industrial Technical Instituted 2015

12>GMBI Recursion
enAkñgú Java ,method mYyGacehAeRbIedayxøÜnva. dMeNIrkarenHehAfa recursion ehIy method mYyEdl
manlkçN³EbbenHehAfa recursive method .
]TahrN_mYyén recursion KWCaKNna factorial énmYycMnYn. factorial éncMnYn N
KWCaplKuNénRKb; cMnYnTaMgGs; cenøaH1nig N . ]TahrN_ factorial 3 KW 1x 2x 3 b¤ 6 . enHbgðajBirebob
factorial mYyEdl GacKNnaedayeRbI recursive method :

// A simple example of recursion


class Factorial
// this is a recursive function
int factR (int n)
int result ,
if (n == 1)
result = factR (n- 1 ) * n ;
return result ;
}
//This is an iterative equivalent.
Int factI (int n)
Int t; result;
Result=l;
For (t=l; t<=n; t++)result*=t;
Returnresult;
}
}class recursion{
Public static void main (string args[]}
Factorial f=new Factorial();
System.out.println(‘Factkorials using recursive
Methos´´);
System .out.println(´´Factorial of 3 is ´´+f,factR(3));
System.out.println(´´Factorial of 4 is +f.factR(
4);
Systim.out.println(´´Factorial of5is+ f.factR(5);
System.out.println();
System.out.println(Factorials using I terative method,´´);
System.out.println(Fatorial of 3 is ´´+f.fsctI(3));
System.out.println(Fatorial of 4 is´´+f.factI(4));
System.out.println(Fatorial of 5 i´´+ f.facti(5);

karNasresr methosmUymanlkçNH recursive enaHeyIgRtUvEtmanXøa if enARtg; kEnøgNamUyedIm,IbgçM


MERHOS eGaymantMéledayKaµNeRbIlkçNH recursive kñúdMeNIkar. ebIeyIgmineFVEI bbenHeT enaHenA

eBleyIg ehA method mkeRbIvamineGaytMélTal;EtesaH.enHCa error EdlEtgEtekItCajwkjab;


eBleFVIkarCamUy recurion.
13>kMritcUleRbI members rbs; class
karpþll; kçNH encapsulation enH class )annaMmknUvsarHsMxan;BI.sarHsMxan;TI1vaP©ab; data CamUynig
code EdleRbIR)as;va.sarHsMxan;TI2vapþl;meFüay)ayEdlGaccUleTAeRbI members tamryHkarRtUt

Binitü.

Page 20
Industrial Technical Instituted 2015

eTaHbICalMnaMrbs; Java manlkçNHsaMjauMbnþick_eday CasMxan;vaman members én class BIrRbePTCamUl


dæanKW public nig private. member EdlmanlkçNH private GaceGaycUleTAeRbIedayesrIcMeBaHcode
EdlkMNt;enAxageRkA class rbs;va. Memder EdlmanlkçNH private GaceGayeKeRbI)ancMeBaH
methods EdlmanenAkñg ú class rbs;vabu;eNÑaH. karcUleTAeRbI memders rbs; class EdlmanlkçNH
twgrwg EbbenHKICW aEpñksMxan;myU énPasasMenrkmµvFi IEbbvtßúeRBaHvaCYykarBarBIkareRbIminRtwmRtUvrbs; object
mYy.edIm,Iyl;BI\T§Bi lén Public nig Private cUrsegátkmµviFIxageRkamenH³
//Public vs private access .
class Myclass{
private int alpha; // private access
public int beta; // public access
int gamma; // default access
// methods to access alpha .It is OK for a member
// of a class to access a private member of the same class .
void setAlpha(int a){
alpha =a;
}
int getAlpha(){
return alpha;
}
}
class accessDemo{
public static void main(String args[]){
Myclass ob=new Myclass();
// Access to alpha is allowed only through
//its accessor methods;
ob.setAlpha(-99);
System.out.println("ob.alpha is "+ ob.getAlpha());
//You cannot access alpha like this :
//ob.alpha=10;// wrong ! alpha is private!
//these are OK because beta and gamma are public.
ob.beta=88; // OK because these are public
ob.gamma=99;
}
}

14 lkçN³ Static
CaFmµta member rbs; class RtUv)aneRbItamry³ object én class mYyb:uEnþvaGaceGay eKbegIátnUv
member mYyEdlGaceRbIxøÜnva)anedaymincaM)ac;bBa¢ak;nUv object eLIy.edIm,I begIátnUv member EbbenH

eyIgRtUvRbkasGBaØatedaydak;Bakü Static enABImux.karNa member mYyRtUv)anRbkaslkçNH Static


vaGacykeTAeRbI)anmun object én class rbs;vabegIáteLIg ehIyk_KµanbBa¢ak;eTAeGay object NamYy
Edr.eyIgGacRbkasTaMg method nig GBaØatCa Static )an.]TahrN_ member mYymanlkçN³ Static enaHKW
main() method . main() method RtUv)anRbkasCa Static eRBaHvaRtUv)anehAeRbIedayRbB½n§ Rbtibtiþkar

kalNakmµviFI cab;epIþmdMenIrkareLIg.enAxageRkA class edIm,IeRbI member mYymanlkçN³ static


enaHeyIgRtUvEtbBa¢ak;eQµaH class vaedaymanP¢ab;CamYynUvsBaØacMnuc. ]TahrN_ ebIsinCaeyIgcg;ehAeRbI
method mYyEdlmanlkçN³ static BIxageRkA class rbs;va enaHeyIgGaceRbITMrg;dUcxageRkamenH ³

Page 21
Industrial Technical Instituted 2015

kñúgenH class name KWCaeQµaHrbs; class Edl member rbs;vamanlkçN³


class name . member

static )anRbkasenAkñúgva.kalNa object mYy)anRbkaseLIgenaHBMumankarcMlgGBaØatEdlmanlkçN³

static )aneLIy. tam BitRKb; objects TaMgGs;rbs; class eRbICarYmnUvGBaØatEdlmanlkçN³ static dUcKña.

enHCa]TahrN_Edlbgðaj BIPaBxusKñarvagGBaØatmanlkçN³ static nigGBaØatFmµta³


// Use a static variable .
class Static Demo {
int x ; // a normal instance variable
static int y ; //a static variable
}
class Sdemo {
public static void main ( String args [ ] ) {
Static Demo ob1 = new Static Demo ( ) ;
Static Demo ob2 = new Static Demo ( ) ;
// Each object has its own copy of an instance variable .
ob1 . x = 10 ;
ob2 . x = 20 ;

System.out.println(“Of course,ob1.x and ob2.x ” + “are independent . ”) ;


System . out . println ( “ob1 .x : ” + ob1 .x + “ \ nob2 .x : ” + ob2 .x ) ;
System . out . println ( ) ;

// Each object shares one copy of a static variable .


System . out . println ( “The static variable y is shared . ” ;
ob1 . y = 19 ;
System . out . println ( “ob1.y : “ + ob1.y + “\nob2.y : “ + ob2.y) ;
System . out . println ( ) ;

System.out.println(“The static variable y can be ”+“accessed through


its class . ” ;
Static Demo . y = 11 ; // Can refer to y through class name
System.out.println(“Static Demo.y :“ +Static Demo.y+“\nob1.y:“+\ob1.y+
“\nob2 . y : “ + ob2 . y ) ;
}
}

PaBxusKñarvag method manlkçN³ static nig method Fmµta enaHKW method manlkçN³ static Gac
ehAeRbItamry³eQµaH class rbs;va edaymincaM)ac;man object én class begáIteLIg.kmµviFIxageRkamenH
Ca]TahrN_EdlbgðajBIkarbegáIt method mYymanlkçN³ static :
// Use a static method .
class Static Meth {
static int val = 1024 ; // a static variable

// a static method
static int valDiv2 ( ) {
return val /2 ;
}
}
class SDemo 2 {
public static void main ( String args [ ] ) {
System . out . println ( “val is ” + Static Meth . val ) ;
System.out.println(”Static Meth.valDiv2( ):“+Static Meth.valDiv2( ) ) ;
Static Meth . val = 4 ;
System . out . println ( “ val is “ + Static Meth . val ) ;
System.out.println (“Static Meth.valDiv2( ): “ +Static Meth.valDiv2 ( ) ) ;
}
}

Page 22
Industrial Technical Instituted 2015

Method RbkasCa static manbMramCaeRcIn³


 vaGacehAeRbI)anEt method EdlmanlkçN³ static b:ueNÑaH.
 vaGaccUleTAeRbI data EdlmanlkçN³ static b:ueNÑaH.
 vaminRtUvmankareRbICamYy this eLIy.
]TahrN_ class xageRkamenHman static method mYyeQµaH valDivDenom ( ) eRbImin)anRtwmRtUveLIy³
class StaticError {
int denom = 3 ; // a normal instance variable
static int val = 1024 ; // a static variable

// Error ! Can´t access a non-static variable


// from within a static method .
static int valDivDenom ( ) {
return val / denom ; // won´t compile!
}
}

kñúgenH denom CaGBaØatFmµtamYyEdlminGaceRbICamYy method manlkçN³ static enaH.CYnu kal


class mYyRtUvkareGayamankarkMnt;tMéldMbUgmYycMnYn mugnwg objects begáIteLIg. ]TahrN_
vaRtUvkarerobcMkartP¢ab;eTAnwgTIq¶ay. vaRtUvkarkMnt;téM ldMbUgeTAeGayGBaØatEdlmanlkçN³ static munnwg
method EdlmanlkçN³ static én class ykvaeTAeRbI. edIm,I GnuvtþnUvTidæPaBEbbenH Java GnuBaØ ateGay

eyIgeRbI static block. static block mYyRtUv)anRbtibtiþkar enAeBl class RtUv)aneBIkcUlCaelIkdMbUg.


enHCa]TahrN_énkaeRbI static block ³
// Use a static block.
Class staticblock {
static doule root0f2;
static {
system.out.print (“Inside static block.”);
rootf2 = Math. Sqrt (2.0);
rootf3 = Math. sqrt (3.0);
}
staticBlock (string msg) {
system.out.println (msg);
}
}
Class sDemo3 {
Public static void main (String args []) {
staticBlock ob = new staticBlock (“Inside Constructor”;
System.out. println (“Square root of 2 is “ +
StaticBlock.root0f2);
System.out. println (“Square root of 3 is “ +
StaticBlock.root0f3);
}
}

Page 23
Industrial Technical Instituted 2015

15/ Class kñúgnig Class mYyenAkñúg Class mYyeTót³


enAAkñgú Java eyIgGackMNt;[man Class mYyenAkñgú Class mYyeTót)an. lkçN³enH BMumanenAkñgú
Java version cas;eT,IgrhUtdl;man Java 1.1 eTIbeK)annEnßmr\va.

TMhMén Class mYyenAkñúg Class mYyeTótRtUv)ankMNt;eday Class eRkArbs;va. Class mYy enAkñúg
Class mYyeTótenaHGaccUleRbI members TaMgGs;rYmTaM member rbs; Class EdlmanlkçN³ private

pgEdr. eTaHya:gNak¾eday Class eRkABMuGacculeTAeRbI member én Class kñúgeT,Iy.


Class kñúgenAkñúg Class mYyeTótenaHmanBIrRbePT ³ Static and non-static. Class mYyenAkñúg Class

mYyeTótEdlmanlkçN³ Static enaHBMusUveRbIeT edaysarvamanPaBtwgrwgkñúgkarcUleRbI member én Class


enaH.RbePTsMxan;bpM utén Class mYykñúg Class mYyeTótenaH KW Class kñúg . Class kñúgEdlminEmn Static
enaHGaceRbIedayp©al;nUvGBØaat nig member én Class eRkArbs;va.
enHCa]TahrN_mYyEdleRbI Class kñúgedIm,IKNnatMélepSg² cMeBaH Class eRkArbs;va ³
// Use an inner Class.
Class Outer {
Int nums [];
Outer (int n[] ) {
Nums = n;
}
Void Analyze () {
Inner in0b = new Inner ();
System.Out. prentln (“Minimum : “+ inob. min () );
System.Out. prentln (“Maximum : “+ inob. max() );
System.Out. prentln (“Average : “+ inob. avg () );
}
// This is an inner Class
Class Inner {
Inner min () {
Int m = nums [0];
For ( int i=1; i<nums. Lenggth; i ++)
If ( nums (i) < m)
m = nums [i];
return m;
}
Int avg () {
Int a = 0 ;
For ( int i = 0 ; i< nums. Length; i++)
A += nums [ i ];
Return a / nums. Length;
}
}
}
Class NestedClassDemo {
Public static void main ( String args [] ) {
Int x [] = { 3, 2, 1, 5, 6, 9, 7, 8};
Outer outob = new outer (x);
Out0b. Analyze ();
}
}

Page 24
Industrial Technical Instituted 2015

eKGackMNt; Class kñúgenAkñúg block mYy. ]TahrN_ eyIgGackMNt; Class kñúg enAkñgú method mYyb¤
enAkñgú tYéndMeMIrdEdl² for dUc)anbGgðajtamkmµvFi IxageRkamenH.
// Define an inner class within a for loop.
class Outer {
int outer _x = 100 ;

void test ( ) {
for (int i = 0 ; i <10 ; i ++ ) {
class Inner {
void display ( ) {
system . out . printlh ( “display: outer_x = “+ outer_x ) ;
}
}
inner inner = new Inner ( ) ;
inner . display ( ) ;
}
}
}
class Inner ClassDemo {
public static void main ( String args [ ] ) {
Outer outer = new Outer ( ) ;
outer. test ( );
}
}

kalNaeKbegáIt class mYyenAkñgú class mYyeTot ehIy class kñgú BMu)anbegáIt object enAkñúg class
eRkAeTenaH eKGaccUleTAeRbI members rbs; class kñúgtamry³ object enAkMritén class kñúgenaH.
]TahrN_ ³ kmµvFi IxageRkambgðajBIkareRbIlkçN³EbbenH.
class A {
in x , y ;
int sum ( ) {
return ( x+y) ;
}
class B {
int z ;
int mysum ( ) {
return ( x+y+z ) ;
}
}
}
class MyAB {
public static void main ( String args [ ] ) {
A ob1 = new A ( ) ;
A.B ob2 = obl.new B ( ) ;
obl.x = 5;
obl.y = 6;
ob2.z =7;
System . out . printlh ( “sum =”+ ob2 . mysum ( ) ) ;
}
}

Page 25
Industrial Technical Instituted 2015

sMNYrniglMhat;

1- GVIeTAehAfa class ?
2- ]bmafaeKman class mYyeQµaH MyClass cUrbgðajBIrebobbegáIt object mYyeQµaH ob.
3- cUrBnül;BPI aBxusKñarvag argument nig)a:ra:EmRt.
4- GVIeTACa constructor ehIyenAeBlNavacab;Rbtibtiþ ?
5- etI constructor Gacman return type Edrb¤eT?
6- etIPaBxusKñarvag class nig object enARtg;Na?
7- GVIeTA garbage collection? ehIyvadMeNIrkaya:gdUcemþc?
8- etI finalize method eRbIsMrab;eFVGI VI?
9- etI this KWCaGVI? ehIyeKeRbIvaenAeBlNa?
10- cUrbegáIt class mYyEdlkñúgenaHman methods BIr. method TImYyGaceGayeKKNnaplbUksV‘Ít BI !
dl; N ehIytMélrbs;vaCacMnYnKt;. rIÉ method TIBIrGaceGayeKKNnaplbUkelxKU BI @ dl; @ N
ehIytMélrbs;vaCacMnYnKt;.
11- cUrbegáIt class A mYyenAkñgú class B eday class nimyY ²man method mYyeQµaH show0
dUcKñaEdlGacbgðajGkSrmYyXøafa “It is in class A.”cMeBaH method kñúg class A nig “It is in class
B.”cMeBaH method enAkñg ú class B. bnÞab;mkRtUvbegáIt main class mYyEdl bgðajBIkarcUleRbI members
TaMgkñúg class A nig kñgú class B.

Page 26

You might also like