Programming Fundamental. W h at i s J A V A ?. J AVA i s an O b j e c t Or ie n te d p r o g r a mm i n g l a n g u a g e a s w e l l a p l a t f o rm . B y u s in g J AV A , w e c an w r it e v a r i o u s t y pe s o f A pp li c a ti o n p r o g r am f o r
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation
Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement.Téléchargez la présentation en cliquant sur ce lien.Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.
History of JAVA JAVAwasstartedwithaproject(Green)tofindtowriteapplications forelectronicdeviceslikeTV-SettopBoxetc.Whichwas originallynamedOak.LaterrenamedwithJAVA. 1991 James Gosling developed Oak to program consumer electronic devices 1995 JAVAformallyannounced asapart of Netscape web browser. 1996 JavaDevelopment Kit (JDK)1.0 bySun Microsystems. 1997 JDK 1.1 launched with JAVAServlet API 1998 Sun introduced community source“Open”and producesJDK 1.2 for Linux 1999 JDK 1.3 released and J2EE,J2SE,J2MEappeared 2002 JAVAWeb Services Developer Pack released for Web Development. 2005 JAVAEnterprise System 2005Q4 released with integration of various features like monitoring, security etc. forSolaries, Windows etc. 2006 The Netbeans IDE 5.0 is released. Sun Open sourced JavaEE component as the Glassfish projecttoJAVA.net.
Why JAVA is PlatformIndependent? A programwritteninHLLmustbeconvertedintoitsequivalentMachinecode, sothatcomputer canunderstandandexecute.Thisconversionisknownas Compilation.Generally,theconvertedmachinecodedependsontheH/wand OS platform.So,thataWindowsprogramwillnotworkonUNIX,or LINUXor Macplatformetc.SincetheyarePlatformdependent. A programwritteninJAVA isplatform-independenti.e.theyarenotaffectedwith changingofOS.ThismagicisdonebyusingBytecode.Bytecodeis independentofthecomputer systemit hastorunupon. JavacompilerdoesnotproducesBytecodeinsteadofnativeexecutablecode whichisinterpretedbyJavaVirtualMachine(JVM) at the timeof execution. Javauses both compiler and interpreter. JavaInterpreter(JVM) forMacintosh JavaInterpreter(JVM) forWindows Java Compiler Java Program JavaByte Code Program JavaInterpreter(JVM) forUnix
Basics of GUI HowGUIapplicationworks? GraphicalUser Interface(GUI)based applicationcontainsWindows,Buttons,Text boxes,DialogueboxesandMenusetc.known as GUIcomponents.Whileusinga GUI application,whenuserperformsanaction,an Eventisgenerated.Eachtimean Eventoccurs, itcauses a Messagewhichsent toOStotake action. WhatisEvent? An Eventsrefers totheoccurrence of an activity. WhatisMessage? A Messageistheinformation/requestsent to theapplication.
GUI in JAVA In Java,GUIfeaturesare supportedthroughJFC(Java Foundation Classes).JFCcomprisesallthefeatureswhichareneededtobuild a GUIapplication. PriertoJava 1.2 JFCcomponentswascalledAbstractWindows Tools(AWT).AfterJava 1.2,amore flexibleSwingComponents wasintroduces. A GUIapplicationinJAVAcontainsthreebasicelements.- 1.GraphicalComponent: Itisan objectthatdefinesascreen elementsuch as Button,Text field,Menus etc.Each componenthas certainproperties.Theyare source of theEvents.InjavaItisalsoknown asWidget(Window Gadget).Itcan becontainercontrolor childcontrol. 2.Event: An Event(occurrence of an activity)isgenerated,whenuserdoes something likemouse click,dragging,pressingakey on the keyboardetc. 3.EventListener: Itcontainsmethod/functionswhichisattachedtoacomponentand executedinresponsetoan event.In Java,ListenerInterface storesallEvent-response-methodsorEvent-Handlermethods.
Events Handlingin JAVA GUIApplication An eventisoccurrence of some activitieseitherinitiatedbyuserorby thesystem.In ordertoreact,you needtoimplementsome Event handlingsysteminyourApplication.Threethingsare importantin Even Handling- EventSource: ItistheGUIcomponentthatgeneratesthe EventHandlerorEventListener: Itisimplementedasintheform ofcode.It eventsthroughListenerInterface. EventObjector Message: Itiscreatedwheneventoccurs.Itcontains event,e.g.Button. receivesandhandles alltheinformation abouttheevent etc. which includesSource of eventandtypeof event Event Source Event Listener Reaction Event occurrence Event object/ Message
Commonly used Events & Listeners Java APIoffers numeroustypesof eventsandevent listeners. Thecommonlyused events are- ActionEvent: TheActioneventsoccurredwhen user completes an actionon componentslike JButton, JCheckBox, JTextFieldetc. TohandleActionEvent,ActionListner interface isused. FocusEvent: TheFocuseventoccurredwhen anycomponentsgainsor losesfocuson components likeJButton, JCheckBox, JTextFieldetc. TohandleFocusEvent, FocusListnerinterfaceisused. KeyEvent: TheKey Eventoccurredwhen a key ispressedonthekryboard on input enabledcomponents, JTextFieldetc. To handle Key Event,KeyListner interface is used. MouseEvents: When a mouseisclicked,enteredor leaveda component area ofacontrol then Mouseeventisgenerated. Anycomponentcan generatethisevent. To handle MouseEvent, MouseListnerinterfaceis used. WindowEvent: WindowEvent occurredwhenuser opensorclosesa Windowobject. Thisevent isgeneratedinternally by thesystem. To handleWindowEvent, WindowListnerinterfaceisused.
JAVA character set Characterset isa set of validcharactersthata languagecan recognize.It maybeany letter, digitor anysymbolor sign. JAVA uses 2-ByteUNICODEcharacterset, whichsupportsalmostallcharactersinalmost alllanguageslikeEnglish,Chinese,Arbicetc. In Unicode,first 128 charactersaresimilarto ASCIIcharacterset.Next128 characterequal toExtendedASCIIcode.Restare capableto supportotherlanguages. Any characterinUnicodecan berepresented by\ufollowedby4 digitHexadecimalnumber. E.g.\u0394torepresentDeltaSymbol.
JAVA Tokens The smallestindividualunitin a program is known as Token. It may anyword, symbols or punctuation mark etc. Followingtypesof tokens Keywords Identifiers Literals Punctuators(;[]etc) used in Java- Operators (+,-,/,*,=,==etc.)
Keywords inJava Keywords are the reserve words that have a special meaning to thecompiler. Key words can’t be used asidentifiers or variable name etc. Commonly usedkey words are- char,long, for,case,if, double,int, short, void, main, while , new etc.
Literalsin Java Literals or constants are dataitems have fixed datavalue. that Java allows several IntegerLiterals FloatingLiterals BooleanLiterals CharacterLiterals StringLiterals Thenullliterals types of literals like-
IntegerLiterals An integerconstantor literalsmusthave one+/-digitwithoutdecimalpoint. Java allowsthreetypesof integerliterals DecimalIntegerLiterals (Base10) e.g.1234,41,+97,-17etc. Octal IntegerLiterals(Base 8) e.g.010,014(Octalmuststartwith0) HexadecimalIntegerLiterals (Base 16) e.g.0xC,0xab(Hexnumbersmuststartswith0x) at least - L or U suffix can usedtorepresentlongand unsignedliteralsrespectively.
Floating / Real Literals A realliteralsarefractionalnumbershavingatleastone digitbeforeandafter decimal pointwith+ or– sign. The followingare validreal numbers- 2.0,17.5,-13.0.-0.00626 The followingare invalid real numbers- 7, 7.,+17/2,17,250.26etc. A realliterals mayberepresentedinExponentformhaving Matissa andexponentwithbase10(E). Mantissa maybe a proper realnumberswhile exponentmustbeinteger. The followingare validreal inexponentform- 152E05,1.52E07,0.152E08,-0.12E-3,1.5E+8 The followingare invalid realexponentnumbers- 172.E5,1.7E,0.17E2.3, 17,22E05,.25E-7
Data types inJAVA Datatypesare meanstoidentifythe typeof data andassociatedoperationsofhandlingit. Java offers twotypesof datatypes. Primitive: Theseare in-builtdatatypesofferedbythe compiler.Javasupports8 primitivedatatypes e.g.byte,short,int,long,float,double,char, boolean. Reference: Theseare constructedbyusingprimitivedata types,as peruserneed.Referencedatatypes storethememoryaddressof an object.Class, InterfaceandArray are the exampleof Reference Datatypes.
Data Types inJava DataTypes Primitive (intrinsic/Fundamentals) Reference Numeric Non-Numeric Classes Interface Arrays Integral Fractional Character Boolean Byte float char short double int long String Datatype is also used inJava asReference datatype
Primitive Data types Type Size Description Range byte 1 Byte Byte integer -128 to +128 short 2 Byte Short integer -32768 to +32767 int 4 Byte integer -231to 231-1 long 8 Byte Long integer -263to 263-1 float 4 Byte Single precision floating point (up to 6 digit) -3.4E+38 to +3.4E+38 double 8 Byte Double precision floating (up to 15 digit) -1.7E+308 to 1.7E+308 char 2 Byte Single character 0 to 65536 Boolean 1 Byte LogicalBoolean values True or False L suffix can used to indicate the value aslong. By default Javaassumefrictional value asdouble,Fand D suffixcanbe used with numberto indicate float and double valuesrespectively.
Working with Variables A variableisnamed memory location,which value ofaparticulardatatype. DeclarationandInitializationofvariable- <data type> <variableName>; Example: int age; double amount; double price=214.70,discount =0.12; String name=“Amitabh” long x=25L; byte a=3; float x=a+b; holds a data By defaultallNumericvariablesinitialized with0,and character andreference variablewithnull,booleanwith false,ifitisnotinitialized. The keyword finalcanbe usedwithvariabledeclarationto indicateconstant. E.g.finaldouble SERVICE_TAX=0.020
Text interaction in JAVA GUIs In GUIapplication often we require to store the values of textfields to variable or vice-versa. Javaoffers three method for thispurpose- getText(): It returns the text stored in the text based GUIcomponents likeText Field, Text Area,Button, Label, Check Boxand Radio Button etc.in string type. e.g. Stringstr1=jTextField1.getText(); parse…….() This method convert textual data Byte.parseByte(Strings) Short.parseShort(Strings) Integer.parseInt(strings) Long.parseLong(strings) Float.parseFloat(strings) from GUIcomponent in to numeric type. – – – – – – string string string string string string into into into into into into byte. short. integer. long. float. double. Double.parseDouble(string s) e.g. int age=Integer.parseInt(jTextField1.getText()); setText() This method stores string into GUIcomponent. e.g. jTextField1.setText(“Amitabh”); jLabel1.setText(“”+payment);
Displaying Dialogue Boxesin JAVAGUIs InGUIapplicationoftenwe requireto displayamessage in theDialogBoxescontainingOKbuttontoclose theDialog Box.The followingstepscanbeusedto display amessage inadialogbox. Firstly,youneedto importjOptionPaneswingcontrol atthe topofprogramcode,by typing- import javax.swing.JoptionPane; Whenrequiredyoumay displayamessageby following code inamethod- JOptionPane.showMessageDialog(null,“Hello..“); Innon-GUIapplication oratconsolewindowyoumay use System.out.print() methodto display amessage. e.g. System.out.print(“Hello…”); System.out.println(“How are you?”);
1. ArithmeticOperators + Unary plus Represents positive values. int a=+25; - Unary minus Represents negative values. int a=-25; + Addition Adds two values int x= a+b; - Subtraction Subtract second operands from first. int x=a-b; * Multiplication Multiplies two values int x= a*b; / Division Divides first operand by second int x=a/b; % Modulus (remainder) Finds remainder after division. int x= a%b; + Concatenate or String addition Adds two strings “ab”+”cd” ”abcd” “25”+”12” ”2512” “”+5 ”5” “”+5+”xyz””5xyz”
2. Increment& DecrementOperator Java supports ++ and-- operator whichadds or subtract1 from its operand.i.e. a=a+1 equivalentto ++aora++ a=a-1 equivalentto --a or a-- ++ or -- operator mayusedin Pre or Post form. ++a or --a (increase/decreasebeforeuse) a++ or a– (increase/decreaseafter use) Ex.Find valueofP?(initially n=8 andp=4) p=p* --n; p=p* n--; 28 32 Ex.Evaluate x=++y+ 2yif y=6. 21 = 7+14 =
4.Logical Operator Logicaloperatorsreturnstrueorfalseaspertheconditionof operands.Theseareusedtodesignmorecomplexconditions. Javaoffers operators. the following six (5 binary and 1 unary) logical Operator Name use Returnstrueif && And x&&y Xandybothtrue || Or x||y Eitherxoryistrue ! Not !x Xisfalse & Bitwiseand x&y Xandybothtrue | Bitwiseor x|y Eitherxoryistrue ^ Exclusiveor x^y Ifxandyaredifferent Ex:5>8||5<2 (false) 1==0||0>1 (false) 6<9 && 4>2 (true) 6==3&&4==4 (false) !(5!=0) (false) !(5>9) (true)
5.AssignmentOperator InJava=operatorisknownasAssignmentoperator,it assignsrighthandvaluetolefthandvariables. Ex:intx=5; z=x+y; Javaofferssomespecialshortened Assignment operators, which are used to assign values on a variable. Operator use Equivalentto += X+=y X=x+y -= X-=y X=x-y *= X*=y X=x*y /= x/=y X=x/y %= X%=y X=x%y Ex: x-=10 x%=y =>x=x-10 => x=x%y
6. Other Operators InJavasome otheroperators are also used for various operations. Some operators are- Operator Equivalent to ?: Shortcut of If condition (turnery operator) <Condition> ?<true action>:<false action> [] Used to declare array or access array element . Used to form qualified name(refer) (type) Converts values as per given datatype new Creates anew object instanceof Determines whether the first operatoris instance of other. <<,>> Performs bitwise left shift orright shift operation. ~ (compliment) Inverts each bit (0 to 1 or 1 to 0) Ex. result =marks>=50 ?‘P’:‘F’ 6>4 ?9:7 evaluates9because 6>4 istrue.
Expression inJava Anexpressionisavalidcombinationofoperators,constants andvariable andkeywordsi.e.combinationofJavatokens. Injava,threetypesofexpressionsareused. ArithmeticExpression Arithmeticexpressionmay containone ormore numericvariables, literalsandoperators.Twooperandsoroperatorsshouldnot occur incontinuation. e.g.x+*y and q(a+b-z/4)isinvalidexpressions. Pureexpression:whenalloperandsare of same type. Mixedexpressions:whenoperandsare of different datatypes. CompoundExpression Itiscombinationof twoormore simpleexpressions. e.g.(a+b)/(c+d) LogicalExpression (a>b)||(b<c) LogicalorBoolean expressionmay have twoormore simple expressionsjoinedwithrelationalorlogicaloperators. e.g.x>y (y+z)>=(x/z) x||y&&z (x) (x-y)
Type Conversion in JAVA The process of converting one predefined typeinto anotheriscalled type conversion. In mixed expression, various types of constant and variables are converted into same type before evaluation. Java facilitates two types of conversion. Implicit type conversion Explicit type conversion
Explicit Conversion inJAVA Anexplicitconversionisuserdefinedthatforcesto convert anoperandtoaspecificdatatype by (type)cast. Ex.(float)(x/2)suppose x isinteger. The resultofx/2isconvertedinfloat otherwise itwill give integer result. Inpure expressiontheresultantisgivenasexpression’s datatype. e.g.100/11will give 9not9.999(since bothare integer) Inmixedexpressionthe implicitconversionisapplied (largesttypepromotion) e.g.inta,mb=2,k=4thenevaluate a=mb*3/4+k/4+8-mb+5/8 = 2*3/4+4/4+ 8– 2+5/8 8 (6/4willgive 1) = = = 6/4+1+ 8–2+5/ 1+1+8– 2+ 0 8
JAVA Statements A statementinJavaisacompleteunitofexecution.It may consistsofExpression,Declaration,Control flow statementsand mustbe endedwithsemicolon(;) Statementsformsablock enclosedwithin blockmayhaveno statement(empty). { }. Even a E.g. If(a>b) {……. ……. } Note: System.out.print(‘h’+’a’)willgive169 System.out.print(“”+‘h’+’a’)willgiveha System.out.print(“2+2=”+2+2) will give 2+2=22 System.out.print(“2+2=”+(2+2)) will give 2+2=4
ProgrammingConstructs inJAVA Ingenerala programis executedfrombeginto end. Butsometimes itrequired toexecute the program selectivelyor repeatedly asper definedcondition. Suchconstructs are calledcontrolstatements. TheprogrammingconstructsinJava,arecategorizedinto- Sequence: Statements are executed into-p downsequence. Selection(conditional): Executionofstatementdepends onthe condition, whetheritis True or False. (Ex.if..,if…else, switchconstructs) Iteration(Looping): Statementisexecuted multiple times (repetition)till the defined conditionTrue or False. (Ex. for.. , while… ,do..whileloop constructs)
Diagrammatic Representation Statement 1 Statement 2 Statement 3 True Condition Statement (s) False Statement (s) Selectionconstruct Sequence construct False True Condition Exitfrom Statement (s) loop Iteration Construct
Selection statement (if..) The if…statementisusedtotestacondition.Ifdefined conditionistruethe statementsare executedotherwise they are ignored. The conditionmay besimple or etc.)and mustbe enclosedin( complex ). (using&&,|| Expressiondefined True orFalse. as condition must be evaluated as if(num>0){ jLable1.setText(“Numberispositive”); } Syntax if(condition) { statement1; …………….. } if(ch>=‘0’&&ch<=‘9’){ jLable1.setText(“Itisdigit”); } In case of single statement inif…the useof{} isoptional.
Selectionstatement (if..else..) The if…else.. alsotestscondition.Ifdefinedconditionis true else the statementsinTrue block are executed otherwise block is executed. if(condition) { statement1; …………….. } else { statement2; ……………. } if(num>0){ jLable1.setText(“Numberispositive”); } else jLable1.setText(“Numberis zero ornegative”); { } if(age>=18) jLable1.setText(“EligibletoVote”); else jLable1.setText(“NoteligibletoVote”); In case ofsingle statement {} isoptional.
The switch statement Multi-branching selection can be made in Javaby using switch statement. It test successively, thevalue of an expression (short,int, long or char type), when match is found,the statements associatedwith constant is executed. switch(day) {case1:Dow=“Sunday”; break; case2:Dow=“Monday”; break; case3:Dow=“Tuesday”; break; case4:Dow=“Wednesday”; break; case5:Dow=“Thursday”; break; case6:Dow=“Friday”; break; case7:Dow=“Saturday”; break; default:Dow=“WrongInput”; } jLable.setText(“Weakday”+Dow); switch(<expression>) { case <const 1>:statement (s); break; case <const2>:statement (s); break; case <const2>:statement (s); break; ……….. [default :statement (s);] } 1.Notwoidenticalconstantcanbeused. 2.Default..isoptionalmaybeanywherein switchblock.
The for.. loop In simpleuse,a for..Loop isEntry-controlledandcounter controlledloophavingfixednumberof iteration. for(initializationexp (s);condition;update exp (s)) {……….. ……….. Loopingstatements } for(int i=1;i<=10 ;i++){ System.out.println(“”+i); } //loop to find even nos. upto 50 for(int i=0;i<=50 ;i=i+2) System.out.println (“”+i); //loop to find factorial int fact=1,num=5; for(int i=1;i<=num;i++) fact=fact *i; System.out.println (“factorial=”+fact); //loop to get sumoffirst 10 nos. int sum=0; sum=sum+i; System.out.println(“”+sum); for(int i=1;i<=10 ;i++ ){ }
Variation in for.. loop Multiple initializationandupdate expression A for..Loop may containmultipleinitializationand/or expressionsseparatedby(,) for (i=0,sum=0;i<=n;sum++,i++) OptionalExpressions In forloopinitialization,conditionandupdatesection omitted.Notethat(;)mustbepresent. for (;i<=n;) Infiniteloop update may be For..Loop may beendless(infinite)whendefinedconditionis alwaystrueoritisomitted. for (;;) Emptyloop for..Loop may not containany statementinloopingbodyi.e. Emptyloop. If (;)placedafterfor..Loop thenemptyloopis created. for (int i=1;i<=300;i++); Variabledeclaredinsidefor..Loop can’taccessedoutsidetheloop. Sinceitisoutof scope.
Connexion au compte
Connectez-vous pour publier votre contenu sur SlideServe.