You are on page 1of 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