《Java语言程序设计双语》.docx
《《Java语言程序设计双语》.docx》由会员分享,可在线阅读,更多相关《《Java语言程序设计双语》.docx(20页珍藏版)》请在冰豆网上搜索。
《Java语言程序设计双语》
《Java语言程序设计(双语)》
(ProgrammingwithJava)
(学时:
50)
一、简要说明:
《Java语言程序设计(双语)》是软件工程、计算机科学与技术及信息类专业的专业选修课;本课程3.0个学分,共50学时,其中上机实验10个学时。
二、课程教学目的
设置本课程的主要目的是通过对Java语言的语法规则、数据类型、虚拟机、流程控制、类与对象、多态性等内容的讲授,让学生掌握应用Java语言进行程序设计的技能,牢固掌握面向对象程序设计的思想,为进行各种实用程序开发奠定一个良好的基础。
同时,该课程采用英文原版教材,以Java知识的教学为载体,为学生创造一种学习计算机知识的英文环境,使学生能用英语进行程序设计方面的交流,培养学生运用英语进行思维的习惯。
该课程也是《J2EE与中间件》等后续课程的先修课。
三、教学基本要求和方法
本课程的理论教学部分主要采用课堂讲解及多媒体辅助教学,多媒体包括幻灯片,相关的声像资料及图片资料等。
实践教学部分通过上机实验、作品设计和案例编程等方法提高学生实际编程能力。
四、课程考核方式
本门课程成绩采用百分制计分。
作为考试改革试点课程,提高平时成绩在总成绩中的比重,注重平时实践和综合能力的培养。
期末笔试成绩拟占总成绩的40%-50%,平时实践、综合设计成绩占总成绩的50%-60%。
采用闭卷笔试、作品设计及平时实践等相结合的多元考核方式。
在笔试中注重考核学生思维能力以及知识灵活应用能力,减少记忆知识的考核;在平时实践和作品设计中重点考查学生学以致用和综合思考的能力,并鼓励个性化设计及创新精神。
五、授课教材及主要参考书目
授课教材:
《Java语言程序设计基础篇(英文版第8版)》,(原书名:
《IntroductiontoJavaProgramming》)(美)Y.DanielLiang著,机械工业出版社,2012.1
主要参考书目:
《Java语言程序设计进阶篇(英文版第8版)》,(美)Y.DanielLiang著,机械工业出版社,2012
《Java大学基础教程(英文影印版》,(原书名《SmallJavaHowtoProgramSixthEdition》),(美)HarveyM.Deitel,PaulJ.Deitel,电子工业出版社,北京
六、教学内容及学时分配
(一)理论教学内容(40学时)
Chapter1IntroductiontoComputers,Programs,andJava(2学时)
1、目的要求:
Toreviewcomputerbasics,programs,andoperatingsystems(§§1.2-1.4).
ToexploretherelationshipbetweenJavaandtheWorldWideWeb(§1.5).
TodistinguishthetermsAPI,IDE,andJDK(§1.6).
TowriteasimpleJavaprogram(§1.7).
Todisplayoutputontheconsole(§1.7).
ToexplainthebasicsyntaxofaJavaprogram(§1.7).
Tocreate,compile,andrunJavaprograms(§1.8).
(GUI)TodisplayoutputusingtheJOptionPaneoutputdialogboxes(§1.9).
2、要点(或讲授内容)
1.1Introduction
1.2WhatIsaComputer?
1.3Programs
1.4OperatingSystems
1.5Java,WorldWideWeb,andBeyond
1.6TheJavaLanguageSpecification,API,JDK,andIDE
1.7ASimpleJavaProgram
1.8Creating,Compiling,andExecutingaJavaProgram
1.9(GUI)DisplayingTextinaMessageDialogBox
Chapter2ElementaryProgramming(2学时)
1、目的要求
TowriteJavaprogramstoperformsimplecalculations(§2.2).
ToobtaininputfromtheconsoleusingtheScannerclass(§2.3).
Touseidentifierstonamevariables,constants,methods,andclasses(§2.4).
Tousevariablestostoredata(§§2.5-2.6).
Toprogramwithassignmentstatementsandassignmentexpressions(§2.6).
Touseconstantstostorepermanentdata(§2.7).
TodeclareJavaprimitivedatatypes:
byte,short,int,long,float,double,andchar(§§2.8.1).
TouseJavaoperatorstowritenumericexpressions(§§2.8.2–2.8.3).
Todisplaycurrenttime(§2.9).
Touseshorthandoperators(§2.10).
Tocastvalueofonetypetoanothertype(§2.11).
Tocomputeloanpayment(§2.12).
Torepresentcharactersusingthechartype(§2.13).
Tocomputemonetarychanges(§2.14).
TorepresentastringusingtheStringtype(§2.15).
TobecomefamiliarwithJavadocumentation,programmingstyle,andnamingconventions(§2.16).
Todistinguishsyntaxerrors,runtimeerrors,andlogicerrorsanddebugerrors(§2.17).
(GUI)ToobtaininputusingtheJOptionPaneinputdialogboxes(§2.18).
2、要点(或讲授内容)
2.1Introduction
2.2WritingSimplePrograms
2.3ReadingInputfromtheConsole
2.4Identifiers
2.5Variables
2.6AssignmentStatementsandAssignmentExpressions
2.7NamedConstants
2.8NumericDataTypesandOperations
2.9Problem:
DisplayingtheCurrentTime
2.10ShorthandOperators
2.11NumericTypeConversions
2.12Problem:
ComputingLoanPayments
2.13CharacterDataTypeandOperations
2.14Problem:
CountingMonetaryUnits
2.15TheStringType
2.16ProgrammingStyleandDocumentation
2.17ProgrammingErrors
2.18(GUI)GettingInputfromInputDialogs
Chapter3Selections(2学时)
1、目的要求:
TodeclarebooleantypeandwriteBooleanexpressionsusingcomparisonoperators(§3.2).
ToprogramAdditionQuizusingBooleanexpressions(§3.3).
Toimplementselectioncontrolusingone-wayifstatements(§3.4)
ToprogramtheGuessBirthdaygameusingone-wayifstatements(§3.5).
Toimplementselectioncontrolusingtwo-wayifstatements(§3.6).
Toimplementselectioncontrolusingnestedifstatements(§3.7).
Toavoidcommonerrorsinifstatements(§3.8).
Toprogramusingselectionstatementsforavarietyofexamples(BMI,ComputeTax,SubtractionQuiz)(§3.9-3.11).
Togeneraterandomnumbersusingthem()method(§3.9).
Tocombineconditionsusinglogicaloperators(&&,||,and!
)(§3.12).
Toprogramusingselectionstatementswithcombinedconditions(LeapYear,Lottery)(§§3.13-3.14).
Toimplementselectioncontrolusingswitchstatements(§3.15).
Towriteexpressionsusingtheconditionaloperator(§3.16).
Toformatoutputusingthe.printfmethodandtoformatstringsusingthetmethod(§3.17).
Toexaminetherulesgoverningoperatorprecedenceandassociativity(§3.18).
(GUI)Togetuserconfirmationusingconfirmationdialogs(§3.19).
2、要点:
3.1Introduction
3.2booleanDataType
3.3Problem:
ASimpleMathLearningTool
3.4ifStatements
3.5Problem:
GuessingBirthdays
3.6Two-WayifStatements
3.7NestedifStatements
3.8CommonErrorsinSelectionStatements
3.9Problem:
AnImprovedMathLearningTool
3.10Problem:
ComputingBodyMassIndex
3.11Problem:
ComputingTaxes
3.12LogicalOperators
3.13Problem:
DeterminingLeapYear
3.14Problem:
Lottery
3.15switchStatements
3.16ConditionalExpressions
3.17FormattingConsoleOutput
3.18OperatorPrecedenceandAssociativity
3.19(GUI)ConfirmationDialogs
Chapter4Loops(2学时)
1、目的要求:
Towriteprogramsforexecutingstatementsrepeatedlyusingawhileloop(§4.2).
TodevelopaprogramforGuessNumberandSubtractionQuizLoop(§4.2.1).
Tofollowtheloopdesignstrategytodeveloploops(§4.2.2).
TodevelopaprogramforSubtractionQuizLoop(§4.2.3).
Tocontrolaloopwithasentinelvalue(§4.2.3).
Toobtainlargeinputfromafileusinginputredirectionratherthantypingfromthekeyboard(§4.2.4).
Towriteloopsusingdo-whilestatements(§4.3).
Towriteloopsusingforstatements(§4.4).
Todiscoverthesimilaritiesanddifferencesofthreetypesofloopstatements(§4.5).
Towritenestedloops(§4.6).
Tolearnthetechniquesforminimizingnumericalerrors(§4.7).
Tolearnloopsfromavarietyofexamples(GCD,FutureTuition,MonteCarloSimulation)(§4.8).
Toimplementprogramcontrolwithbreakandcontinue(§4.9).
(GUI)Tocontrolaloopwithaconfirmationdialog(§4.10).
2、要点:
4.1Introduction
4.2ThewhileLoop
4.3Thedo-whileLoop
4.4TheforLoop
4.5WhichLooptoUse?
4.6NestedLoops
4.7MinimizingNumericErrors
4.8CaseStudies
4.9Keywordsbreakandcontinue
4.10(GUI)ControllingaLoopwithaConfirmationDialog
Chapter5Methods(2学时)
1、目的要求:
Todefinemethods,invokemethods,andpassargumentstoamethod(§5.2-5.5).
Todevelopreusablecodethatismodular,easy-to-read,easy-to-debug,andeasy-to-maintain.(§5.6).
Tousemethodoverloadingandunderstandambiguousoverloading(§5.7).
Todesignandimplementoverloadedmethods(§5.8).
Todeterminethescopeofvariables(§5.9).
ToknowhowtousethemethodsintheMathclass(§§5.10-5.11).
Tolearntheconceptofmethodabstraction(§5.12).
Todesignandimplementmethodsusingstepwiserefinement(§5.12).
2、要点:
5.1Introduction
5.2DefiningaMethod
5.3CallingaMethod
5.4voidMethodExample
5.5PassingParametersbyValues
5.6ModularizingCode
5.7Problem:
ConvertingDecimalstoHexadecimals
5.8OverloadingMethods
5.9TheScopeofVariables
5.10TheMathClass
5.11CaseStudy:
GeneratingRandomCharacters
5.12MethodAbstractionandStepwiseRefinement
Chapter6Single-DimensionalArrays(1学时)
1、目的要求:
Todescribewhyarraysarenecessaryinprogramming(§6.1).
Todeclarearrayreferencevariablesandcreatearrays(§§6.2.1-6.2.2).
Toinitializethevaluesinanarray(§6.2.3).
Toaccessarrayelementsusingindexedvariables(§6.2.4).
Todeclare,create,andinitializeanarrayusinganarrayinitializer(§6.2.5).
Toprogramcommonarrayoperations(displayingarrays,summingallelements,findingminandmaxelements,randomshuffling,shiftingelements)(§6.2.6).
Tosimplifyprogrammingusingthefor-eachloops(§6.2.7).
ToapplyarraysintheLottoNumbersandDeckOfCardsproblems(§§6.3-6.4).
Tocopycontentsfromonearraytoanother(§6.5).
Todevelopandinvokemethodswitharrayargumentsandreturnvalue(§6.6–6.7).
Todefineamethodwithvariable-lengthargumentlist(§6.8).
Tosearchelementsusingthelinear(§6.9.1)orbinary(§6.9.2)searchalgorithm.
Tosortanarrayusingtheselectionsort(§6.10.1)
Tosortanarrayusingtheinsertionsortalgorithm(§6.10.2).
TousethemethodsintheArraysclass(§6.11).
2、要点:
6.1Introduction
6.2ArrayBasics
6.3Problem:
LottoNumbers
6.4Problem:
DeckofCards
6.5CopyingArrays
6.6PassingArraystoMethods
6.7ReturninganArrayfromaMethod
6.8Variable-LengthArgumentLists
6.9SearchingArrays
6.10SortingArrays
6.11TheArrays
Chapter7MultidimensionalArrays(1学时)
1、目的要求:
Togiveexamplesofrepresentingdatausingtwo-dimensionalarrays(§7.1).
Todeclarevariablesfortwo-dimensionalarrays,createarrays,andaccessarrayelementsinatwo-dimensionalarrayusingrowandcolumnindexes(§7.2).
Toprogramcommonoperationsfortwo-dimensionalarrays(displayingarrays,summingallelements,findingminandmaxelements,andrandomshuffling)(§7.3).
Topasstwo-dimensionalarraystomethods(§7.4).
Towriteaprogramforgradingmultiple-choicequestionsusingtwo-dimensionalarrays(§7.5).
Tosolvetheclosest-pairproblemusingtwo-dimensionalarrays(§7.6).
TocheckaSudokusolutionusing