《Java语言程序设计基础教程》
《Java语言程序设计基础教程》习题解答
解答:A
17、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用______字节内存空间,这样,无论是中文字符还是英文字符,都是占用______字节内存空间。
18、设x =2 ,则表达式(x ++)/3 的值是______。
C.defaultD.private
解答:C
5、下面哪一个特性不是面向对象编程主要体现的()。
A.封装性ﻩﻩB.继承
C.多态ﻩﻩD.类
解答:C
6、 不允许作为类及类成员的访问控制符的是()。
A.publicﻩB.private
C.staticﻩﻩﻩD.protected
解答:C
7、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。
A.int a[][]=new int[5][5];ﻩB. int [][]b=newint[5][5];
C. int []c[]=new int[5][5];ﻩD.int [][]d=newint[5,5];
解答:D
16、关于下面的程序,正确的结论是______。
publicclassex4_7{
解答:D
3、ﻩpublic staticvoid main方法的参数描述是:()
A.Stringargs[]ﻩﻩﻩB.String[] args
C.Stringsargs[]ﻩﻩD.Stringargs
解答:A,B
4、在Java中,关于CLASSPATH环境变量的说法不正确的是:()
A.CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。
Java语言程序设计基础篇(第10版) 梁勇 课后习题答案
System.out.println("Programming is fun .");
}
}
1.2 public class Test{
public static void main(String[] args){
for(int i = 0;i <= 4;i++){
System.out.println("Welcome to Java !");
public static void main(String[] args){ double S = 14 / 1.6;
double T = 45 * 60 + 30; double speed = S / T; System.out.println(speed); } } 1.11 public class Test{ public static void main(String[] args){ int BN = 312032486; //original person numbers double EveryYS,EveryYBP,EveryYDP,EveryYMP; EveryYS = 365 * 24 * 60 * 60; EveryYBP = EveryYS / 7; EveryYDP = EveryYS / 13; EveryYMP = EveryYS / 45; int FirstYP,SecondYP,ThirdYP,FourthYP,FivthYP; FirstYP = (int)(BN + EveryYBP + EveryYMP - EveryYDP); SecondYP = (int)(FirstYP + EveryYBP + EveryYMP - EveryYDP); ThirdYP = (int)(SecondYP + EveryYBP + EveryYMP - EveryYDP); FourthYP = (int)(ThirdYP + EveryYBP + EveryYMP - EveryYDP); FivthYP = (int)(FourthYP + EveryYBP + EveryYMP - EveryYDP); System.out.println(FirstYP); System.out.println(SecondYP); System.out.println(ThirdYP); System.out.println(FourthYP); System.out.println(FivthYP); } } 1.12 public class Test{ public static void main(String[] args){ double S = 24 * 1.6; double T = (1 * 60 + 40) * 60 + 35; double speed = S / T; System.out.println(speed); } } 1.13 import java.util.Scanner; public class Test{ public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.println("input a,b,c,d,e,f value please:"); double a = input.nextDouble(); double b = input.nextDouble(); double c = input.nextDouble(); double d = input.nextDouble(); double e = input.nextDouble();
《JAVA编程基础》课程标准
《JAVA语言程序设计》课程标准课程名称:JAVA语言程序设计课程类别:专业课课程代码:适用专业:软件技术开课部门:信息工程系一、课程定位(一)课程性质《JAVA语言程序设计》是计算机类专业的核心课程,是软件技术专业的一门重要的专业核心课程,旨在培养学生程序设计技术和OOP设计思想,涉及计算机体系结构、面向对象编程、多线程处理、网络通信以及程序设计等内容,通过本课程的学习,学生能够了解 Java 语言特征、常见的 Java 类库以及面向对象程序设计思想,掌握计算机程序的结构;掌握程序的开发过程;掌握常用数据结构及Java编程语言的语法;学会利用 Java 语言编写面向网络应用的简单程序。
为以后学习更高级的计算机相关课程,从软件开发相关工作奠定坚实的基础。
(二)课程任务通过该课程的学习,使学生掌握OOP编程思想和Java语法,了解开发规范,培养信息搜索与解释能力。
(三)课程衔接前导课程:网页制作、C语言程序设计。
后续课程:Java高级应用、移动应用程序开发。
二、课程目标通过本课程的学习,使学生具备 Java程序设计语言相关知识、能够编写、调试Java程序,遵守良好的代码编写规范。
能够使用Java语言解决实际问题,能胜任Java程序开发、软件测试等工作任务。
(一)知识目标1.掌握创建和导入包的方法2.掌握Java的数据类型3.掌握Java有哪些成员访问控制符4.掌握类和对象5.掌握多态和方法的重载与重写6.掌握构造方法的特点7.掌握集合框架中的几个接口8.理解Java的事件处理机制9.掌握Java程序要访问数据库步骤10.掌握程序、进程和线程的概念11.掌握创建线程的两种方式(二) 能力目标1.具备三种基本结构和Application的编程能力2.能够用分支结构进行编程3.能够用循环结构进行编程4.能够进行应用程序的编程5.具备类的编程能力6.能设计类的字段、属性和方法7.能设计类的构造函数8.能设计类的方法重载9.能设计类的继承10.能设计类的多态性11.能设计和使用类成员和对象成员12.具备图形界面基本组件的使用能力13.具备Windows高级控件使用能力14.能用布局管理器和容器结合设计复杂界面15.具备组件的功能开发能力,熟练使用委托事件处理机制(三)素质目标1.通过标准开发过程和规范化的程序设计训练,培养学生吃苦耐劳、细致认真,一丝不苟的工作作风;2.通过项目中界面设计,激发学生的美学潜力和审美情趣;3.通过分组协作,培养学生团队合作和与人交流、沟通的能力;4.通过项目实施中的作品展示,培养学生表达和展示自我的能力与意识;5.养成编程的良好习惯,不断拓展学习空间。
《JAVA基础教程》第三章 Java程序设计基础
第三章Java程序设计基础3.1 Java编程概况现在你可以复习一下Java语言的背景材料,它的基本结构象C/C++,但任何用面向过程语言编写过程序的人都可以了解Java语言的大部分结构.3.1.1程序结构Java语言的源程序代码由一个或多个编译单元(compilation unit)组成,每个编译单元只能包含下列内容(空格和注释除外):*一个程序包语句(package statement )*入口语句(import statements) *类的声明(class declarations)*界面声明(interface declarations) 每个Java的编译单元可包含多个类或界面,但是每个编译单元最多只能有一个类或者界面是公共的。
Java的源程序代码被编译?reg;后,便产生了Java字节代码。
Java的字节代码由一?copy;不依赖于机器的指令组成,这?copy;指令能被Java的运行系统(runtimesystem)有效地解释。
Java的运行系统工作起来如同一台虚拟机。
在当前的Java实现中,每个编译单元就是一个以.java为后缀的文件。
每个编译单元有若干个类,编译后,每个类生成一个.class文件。
.class文件是Java虚拟机能够识别的代码。
3.1.2 注释三种类型如下://注释一行/*一行或多行注释*//**文档注释**/文档注释一般放在一个变量或函数定义?reg;前,指示在任何自动生成文档系统中调入。
这?copy;注释都是声明条目的描述.。
3.1.3 标识符变量,函数,类和对象的名称都是标识符,程序员需要标识和使用的东西都需要标识符。
在Java语言里,标识符以字符或_,$开头,后面可以包含数字,标识符是大小写有区别的,没有长度限制。
有效的标识符 myname ict_network Hello _sys_path $bill例子:int a_number; char _onechar; float $bill;关键词 abstract continue for new switch boolean default goto null synchronized break do if package this byte double implements private threadsafe byvalue else import protected throw case extends instanceof public transient catch false int return true char final interface shorttry class finally long static void const float native super while 其它保留词以下单词被保留使用:cast future generic inner operator outer rest var3.1.4 数据类型Java使用五种基本类型:integer(整数),floating(浮点数),point(指针),Boolean(布尔变量),Character or String(字符或字符串)。
java程序设计教程pdf
java程序设计教程pdfJava程序设计教程(PDF)是一本涵盖Java编程语言的学习资料。
本教程以详细的介绍和实例为导向,帮助读者系统地学习和掌握Java编程的基础和高级概念。
该教程首先介绍了Java编程语言的背景和发展历史,让读者了解Java的起源和其在编程领域的重要性。
然后,教程深入讲解了Java的基本语法和基本面向对象的概念,包括变量、数据类型、运算符、控制流程等内容。
通过实例代码的演示,读者能够更好地理解和应用这些概念。
接下来,教程介绍了Java的面向对象编程,包括类和对象的定义与应用、继承、封装、多态等内容。
通过编写实例程序,读者能够熟悉面向对象的思想和设计模式,并能够使用Java实现复杂的程序逻辑。
此外,教程还详细介绍了Java的异常处理、文件操作和网络编程等高级概念。
通过学习这些内容,读者能够编写更加稳定、可靠以及具有扩展性的Java程序。
除了基础和高级概念的讲解之外,本教程还提供了大量的实例代码和练习题,以帮助读者巩固所学内容。
通过实践,读者能够更好地掌握Java编程语言,并且能够在实际开发中应用所学知识。
最后,本教程还介绍了常用的Java开发工具和调试工具,以帮助读者提高编程效率和代码质量。
此外,教程还推荐了一些优秀的学习资源,如书籍、网站和在线课程,供读者进一步深入学习和探索Java编程。
总之,Java程序设计教程(PDF)是一本全面、详细的Java编程学习资料。
无论是初学者还是有经验的开发者,通过学习这本教程,读者都能够系统、深入地掌握Java编程语言,提高自己的编程能力。
《Java语言程序设计》教案
项目名称
Java语言程序设计
任务名称
任务一项目概述
学时数
4
教学目标
了解《计算机网络应用设计项目》教学目标、教学方式、系统运行平台及程序架构。掌握信息系统的相关概念;计算机网络中的相关概念、软件体系结构;掌握Java环境设置及安装。
课程基本信息
课程名称
Java语言程序设计
课程类别
□公共基础课□职业基础课■职业技术课
开设学期
2015—2016学年第一学期教学专业计算机 Nhomakorabea用技术专业
教学班级
14计应大专班
总学时
120
理论学时
60
实践学时
60
使用教材
《Java程序设计实例教程》(第1版),刘志成,人民邮电出版社,20XX年
任课教师
宋晓燕
第6节课堂案例
课后作业
1.某学员3门课成绩如右表所示,编程实现:
(1)Java课和SQL课的分数之差
(2)3门课的平均分
(3)求出3门课的总分
(4)求出最高分和最低分
2.编程计算表达式的值:
X+a%3*(int)(x+y)%2/4,设x=2.5,a=7,y=4.7
3.输入课本P35页课堂案例3——使用运算符和表达式。
第1节构造方法
1.参数化构造方法及示例
2.隐式构造方法及示例
3. this关键字的使用
第2节面向对象的封装性
1.为属性封装
java程序设计基础第三版
java程序设计基础第三版Java程序设计基础第三版Java是一种广泛使用的编程语言,以其跨平台的特性、面向对象的特性、健壮性、安全性和性能而闻名。
《Java程序设计基础》第三版是对Java语言的深入介绍,适合初学者和有一定编程基础的读者。
本版书籍在前两版的基础上,更新了Java语言的最新发展,并增加了一些实用的编程技巧。
第一章:Java语言概述Java语言由Sun Microsystems公司(现为Oracle公司)在1995年发布。
Java是一种纯面向对象的语言,这意味着在Java中,所有的数据都是对象。
Java的设计哲学是“一次编写,到处运行”(Write Once, Run Anywhere),这得益于它的虚拟机(JVM)技术。
第二章:Java开发环境搭建在开始Java编程之前,需要安装Java开发工具包(JDK),并配置环境变量。
此外,还可以使用集成开发环境(IDE)如Eclipse或IntelliJ IDEA来提高开发效率。
第三章:基本语法Java的基本语法包括数据类型、变量、运算符、控制语句等。
Java是强类型语言,所有变量在使用前必须声明其类型。
Java提供了丰富的控制语句,如if-else、switch、while、for等。
第四章:面向对象编程面向对象编程(OOP)是Java的核心特性。
本章介绍了类和对象的概念,以及如何使用类来封装数据和行为。
此外,还介绍了继承、多态和接口等OOP的基本概念。
第五章:数组和字符串数组是Java中存储固定大小的同类型元素的集合。
字符串是字符的序列,Java提供了String类来处理字符串,包括字符串的创建、连接、比较等操作。
第六章:集合框架Java集合框架提供了一套接口和类,用于存储和操作对象集合。
包括List、Set、Map等接口,以及ArrayList、HashSet、HashMap等实现类。
第七章:异常处理Java使用异常处理机制来处理程序运行时出现的错误。
广工《Java语言程序设计基础教程》上机实验指导手册(第一次)
《Java语言程序设计基础教程》上机实验指导手册实验一 Java环境演练【目的】①安装并配置Java运行开发环境;②掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;③掌握开发Java Applet程序的3个步骤:编写源文件、编译源文件和运行Java Applet 程序;④学习同时编译多个Java源文件。
【内容】1.一个简单的应用程序✧实验要求:编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:Hello.javapublic class Hello{public static void main (String args[ ]){【代码1】//命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A{void fA(){【代码2】//命令行窗口输出"We are students"}}✧实验后的练习:1.编译器怎样提示丢失大括号的错误?2.编译器怎样提示语句丢失分号的错误?3.编译器怎样提示将System写成system这一错误?4.编译器怎样提示将String写成string这一错误?2.一个简单的Java Applet程序✧实验要求:编写一个简单的Java Applet程序,并在Java Applet中写两行文字:“这是一个Java Applet程序”和“我改变了字体”。
✧程序运行效果示例:程序运行效果如下图所示:✧程序模板:FirstApplet.javaimport java.applet.*;import java.awt.*;public class FirstApplet extends Applet{public void paint(Graphics g){g.setColor(Color.blue);【代码1】//在Java Applet中绘制一行文字:“这是一个Java Applet 程序”g.setColor(Color.red);g.setFont(new Font("宋体",Font.BOLD,36));【代码2】//在Java Applet中绘制一行文字:“我改变了字体”}}✧实验后的练习:5.程序中的主类如果不用public修饰,编译能通过吗?6.程序中的主类如果不用public修饰,程序能正确运行吗?7.程序将paint方法误写成Paint,编译能通过么?8.程序将paint方法误写成Paint,运行时能看到有关的输出信息吗?3.联合编译✧实验要求:编写4个源文件:Hello.java、A.java、B.java和C.java,每个源文件只有一个类,Hello.java是一个应用程序(含有main方法),使用了A、B和C类。
Java程序设计基础教程
04
9.4形状类
06
9.6 FXML 设计用户界 面
05
9.5事件处 理机制
9.8本章小结
9.7 JavaFX可视化 布局工具
9.9习题
1
10.1数据库概 述
2
10.2 SQL语言 基础
3
10.3 MySQL 数据库简介
4
10.4 Java数 据库编程
5
10.5数据库应 用综合实例
10.6本章小结
4.8 Lambda表达式
4.10习题
01
5.1异常概 述
02
5.2 Java 异常的捕获 和处理
04
5.4自定义 异常类
06
5.6习题
03
5.3 Java 异常的声明 和抛出
05
5.5本章小 结
6.1包装类
6.2 Math类与 Random类
6.3字符串类 6.4日期与时间类
1
6.5集合类
2
6.6泛型
3
6.7反射机制
4
6程简介
7.3线程同步
7.4本章小结
7.5习题
1
8.1输入输出 流概述
2
8.2文件类
3
8.3字节流
4
8.4字符流
5
8.5随机流
8.6本章小结
8.7习题
01
9.1 GUI简 介
02
9.2常用的 UI组件
03
9.3布局面 板
2.7本章小结 2.8习题
3.1类的定义
3.2对象的创建与使 用
3.3访问控制符
3.4 static关键字 的使用
3.5 this关键字的 使用
《Java语言程序的设计基础教程》习题解答
《Java语言程序设计基础教程》练习思考题参考答案第1章 Java程序设计概述1.9 练习思考题1、Java运行平台包括三个版本,请选择正确的三项:()A. J2EEB. J2MEC. J2SED. J2E解答:A,B,C2、Java JDK中反编译工具是:()A. javacB. javaC. jdbD. javap解答:D3、public static void main方法的参数描述是:()A. String args[]B. String[] argsC. Strings args[]D. String args解答:A,B4、在Java中,关于CLASSPATH环境变量的说法不正确的是:()A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。
B. 编译器用它来搜索各自的类文件。
C. CLASSPATH是一个目录列表。
D. 解释器用它来搜索各自的类文件。
解答:A5、编译Java Application源文件将产生相应的字节码文件,扩展名为()A. .javaB. .classC. .htmlD. .exe解答:B6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。
7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。
8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。
9、开发与运行Java程序需要经过哪些主要步骤和过程?10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的?11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
Java语言程序设计基础教程课件(第6章)
只能向滚动面板添加一个组件
构造方法
ScrollPane() ScrollPane(int a)
a的取值: 1)SCROLLBARS_ALWAYS 、
2)SCROLLBARS_AS_NEEDED、
3)SCROLLBARS_NEVER
P134【例6-3】使用ScrollPane容器
con.add(String s,Component b) con.add(Component b,String s)
card.show(con,s) card.first(con) st(con) card.previous(con) card.next(con)
Container(容器)的子类,属内层容器
在外层容器内部实现分块布局
默认布局是FlowLayout布局
常用方法同Frame
java.awt.ScrollPane类——滚动面板
P133 【例6-2】使用Panel容器
6.3.3 ScrollPane
java.awt.ScrollPane——滚动面板
但是它的主要功能是容纳其它组件和容器
容器通过add()方法向容器中添加组件。
有三种类型的常用容器:
Frame、 Panel、 ScrollPane。
6.3.1 Frame
Frame类是Container类的间接子类
可以向窗口添加组件
顶层容器,不容许被添加
默认布局是BorderLayout
方法说明
绘制组件
重绘组件 设置组件的大小和位置 设置组件可见性 设置鼠标指向组件时的光 标形状。 将变化后的界面显示出来 更新组件
java语言程序设计基础
java语言程序设计基础Java语言是当前非常流行和广泛使用的一种计算机程序设计语言,其应用范围非常广泛,性能也非常好。
Java语言的特点是跨平台性好、安全性高、开发效率高、可维护性强等等,因此在企业级、云计算、移动开发、大数据、物联网等领域都有非常广泛的应用。
Java语言也是IT行业里面最为热门的一种编程语言,学会这种编程语言对于程序员来说至关重要。
Java语言程序设计基础是学习Java编程的必备基础,好的基础不仅可以使初学者更好、更快速地掌握Java语言的核心概念和基本知识,还能够培养良好的编程习惯和思维方式。
Java语言程序设计基础包括Java程序设计的基本语法、面向对象编程思想、程序执行顺序、编程方法等等。
以下是有关Java语言程序设计基础的几个要点:一、Java语言的基本语法:Java语言的基本语法包括数据类型、变量、运算符、控制语句等等,初学者需要一步一步地学习和理解它们的概念、语法和用法,然后可以通过练习的方式巩固。
二、Java语言的面向对象编程思想:Java是一种面向对象编程语言,在学习Java语言程序设计基础的过程中,学生需要理解面向对象编程思想的核心概念,例如类、对象、继承、多态等等。
同时,初学者还需要学习Java中的面向对象编程的特性和优势,例如封装、继承和多态,以及如何使用它们。
三、Java程序的执行顺序:了解Java程序的执行顺序非常重要。
学生需要掌握Java程序执行的主要流程,包括类的加载、连接、初始化等等过程,这样才能开发出更加完善、高效的Java程序。
四、Java编程方法:对于初学者来说,掌握好Java编程方法也非常重要。
学生需要在学习Java程序设计基础的过程中,学会如何分析和解决问题,如何设计好程序的架构,如何运用好Java语言的特性等等。
总之,Java语言程序设计基础是Java编程入门的第一步,掌握它是非常必要的。
初学者需要认真学习Java语言的基本语法、面向对象编程思想、程序执行顺序和编程方法等关键内容,尽量多实践和练习,这样才能够在后续的学习和实践中不断提升自己的编程技能。
Java程序设计基础教程-完整教案
第1章 Java基础知识教学过程第2章基本数据类型及运算符教学过程第1章初识Java教学过程}四、break语句和continue语句在循环语句中的用法。
案例:2.常量和变量的具体应用public class ConstantAndVariablesDemo {public static void main(String[] args) {final int MALE = 1 ; // 定义常量MALE表示男性,常量需要在声明时赋值int age ; // 声明age,类型是int类型的int height = 180; // 声明height,类型是int类型的,并赋值为180// age未定义,所以此处会抛出错误// System.out.println("MALE = " + MALE + "; age = " + age + " ; height = " + height);age = 20; // 给age赋值// 打印输出System.out.println("MALE = " + MALE + "; age = " + age + " ; height = " + height);height = 177; // 变量的重新赋值System.out.println("MALE = " + MALE + "; age = " + age + " ; height = " + height);// MALE = 0; // 常量无法重新赋值}}2. break和continuepublic class ContinueBreakDemo {public static void main(String[] args) {for (int i = 0 ; i < 10; i++) {if (2 == i) {System.out.println("程序运行跳出标志!跳出循环!");break;}System.out.println("第" + i + "次循环。
《程序设计基础(Java)》教案
《程序设计基础(Java)》教案一、教学目标1. 让学生掌握Java编程语言的基本语法和结构。
2. 培养学生编写简单的Java程序,为后续深入学习打下基础。
3. 帮助学生理解面向对象编程的基本概念,如类、对象、封装、继承和多态。
二、教学内容1. Java语言简介:介绍Java语言的发展历程、特点和应用领域。
2. Java基本语法:变量、数据类型、运算符、控制语句、数组和字符串。
3. 面向对象编程:类与对象、封装、继承和多态。
4. 常用Java类库:ng、java.util、java.awt等。
5. 编程实践:编写简单的Java程序,如计算器、排序算法等。
三、教学方法1. 讲授法:讲解Java语言的基本语法和面向对象编程概念。
2. 案例分析法:分析实际编程案例,让学生理解面向对象编程的应用。
3. 实践操作法:让学生动手编写Java程序,提高编程能力。
4. 讨论法:分组讨论编程问题,培养学生的团队协作能力。
四、教学安排1. 第1-2课时:Java语言简介及基本语法。
2. 第3-4课时:面向对象编程。
3. 第5-6课时:常用Java类库。
4. 第7-8课时:编程实践。
5. 第9-10课时:总结与复习。
五、教学评价1. 课堂参与度:评估学生在课堂上的发言和提问情况。
2. 编程作业:评估学生编写的Java程序的正确性和完整性。
3. 小组讨论:评估学生在讨论中的表现和团队协作能力。
4. 期末考试:考察学生对Java编程基础知识的掌握程度。
六、教学资源1. 教材:《Java程序设计基础》2. 课件:教师自制的PPT课件3. 编程环境:Eclipse、IntelliJ IDEA等4. 在线编程平台:LeetCode、牛客网等5. 教学视频:网易云课堂、慕课网等提供的Java编程教程七、教学过程1. 导入:通过介绍Java语言在实际应用中的案例,激发学生的学习兴趣。
2. 讲解:结合课件,讲解Java语言的基本语法和面向对象编程概念。
《JAVA程序设计基础》课程标准
《JAVA 程序设计基础》课程标准一、课程概述本门课程是为计算机科学专业的软件工程方向、软件服务外包方向、网络技术方向,以及通信工程专业的通信工程方向、嵌入式系统方向开设的一门专业基础课。
其主要内容有Java 基本语法、Java 基本语句、面向对象程序设计、多线程技术、异常处理机制、Windows 环境编程、Java 网络编程等等,其目标是为大学本科高年级学生提供有关Java 的基础知识以及面向对象的程序设计方法所必需具有的知识和技能;Java 语言的运行环境有许多特性,对图形用户界面(GUIs)、多线程和网络的支持,是当今应用最广的一门网络语言。
本门课程是计算机科学技术与通讯技术类专业的应用学科,本门课程的先修课程是《数据结构》,后续课程有《Java Swing 图形界面设计》、《JAVA 模式设计》。
该课程可以在大学二年级开设。
二、课程目标完成本课程的学习后,学生应该能够:1.了解Java 语言的主要特性,并理解面向对象的编程技术;2.掌握Java 语言的运行环境和Java 的基本语句及编程;3.理解并学会使用异常处理机制和多媒体技术;4.掌握图形用户界面设计和事件处理机制;5.学会开发多线程Java 应用程序和Java applets 小应用程序;6.理解TCP/IP和用户数据报协议(UDP),并掌握Java 网络编程和数据库编程。
三、课程内容与教学要求这门学科的知识与技能要求分为知道、理解、掌握、学会四个层次。
这四个层次的一般涵义表述如下:知道——是指对本门课程的教学内容和教学标准的认知。
理解——是指对本门课程涉及到的概念、原理与技术能明白和解释。
掌握——是指能运用已理解的知识进行编程。
学会——是指能灵活运用相关知识进行实验分析与设计。
教学内容和要求表中的“√”号表示教学知识和技能的教学要求层次。
本标准中打“*”号的内容可作为自学,教师可根据实际情况确定要求或不布置要求。
教学内容及教学要求表四、课程实施JAVA 语言程序设计是计算机科学技术以及通讯技术类选修课;一般情况下,每周安排3 课时,共54 课时,其中讲授 40 课时、实验 14 课时。
04747《Java语言程序设计(一)》教材
Oak 语言在消费性电子产品市场上没有获得青睐。但在当时,Internet 开始流行,人们发明了一种网络传输协议, 这种协议可以在文本中插入图片和声音,能使单调的 Internet 世界变得图文并茂。虽然 Web 页面拥用图文和声音,但仍 然是静态的,不具备交互性。会段程序。由于在 Internet 上运行的数以千计不同类的计算机,这就要求编写这种程序的语言必须具有平台无关性,并要求语言必须简练,支撑环 境要小,而安全性却很高。Oak 语言恰好能够满足这些要求。
public static void main(String []args){ System.Out.println(“你好!欢迎你学习 Java 语言。”);
} } 上述 java 程序的执行将输出以下字样: 你好!欢迎你学习 Java 语言。
一个应用程序由若干个类组成,上面这个应用程序只有一个类,类的名字是 Example1_1。public 是 java 语言的关 键字,表示声明的类 Example1_1 是公用的。class 也是关键字,用来声明类。最外层的一对花括号以及括号内的内容叫 做类体。public static void main(String []args)是类 Example1_1 的一个方法。一个应用程序必须只有一个类含有 main()方法,这个类是应用程序的主类。public static void 是对 main()方法的说明。应用程序的 main()方法必须被 说明成 public static void。表示 main()方法的访问权限是公有的,它是一个类方法,没有结果返回,参见第 3 章。String []args 或 String args[],声明 main()方法的参数是一个字符串数组,参见第 4 章。
《Java语言程序设计基础教程》参考答案
《Java语言程序设计基础教程》参考答案《Java语言程序设计基础教程》参考答案第2章一、选择题ACCCCCDABB二、编程题1.publicclassTest1{publicstaticvoidmain(String[]args){System.out.println("我是一名java爱好者!");}}2.publicclassTest2{publicstaticvoidmain(String[] args){doublex=3.6,z;inty=7;z=x+y%3-(2x+y);System.out.println("表达式的值为:"+z);}}3.importjava.util.Scanner;publicclassTest3{publicstaticvoidmain(String[]args){doublea;Scannerin=newSc anner(System.in);System.out.println("请输入浮点数:");a=in.nextDouble();System.out.println("整数部分为"+(int)a);System.out.println("小数部分为:"+a%1);}}第3章一、选择题ABABABCACA二、编程题1.publicclassTest1{publicstaticvoidmain(String[]args){doublec,f=76;c=(5.0/9)(f-32);System.out.println("对应的摄氏度为:"+c);}}2.publicclassTest2{publicstaticvoidmain(String[]args){intdays=160;intweekth,dayth;week th=days/7+1;dayth=days%7;System.out.println(“是一年的第”+weekth+”星期的第”+dayth+”天”);}}第4章一、选择题ADCCBCCBAA二、编程题1.importjava.util.;publicclassTest1{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("请输入年份:");intx=sc.nextInt();if(x%4==0&&x%100!=0)System.out.println("是闰年");elseSystem.out.println("不是闰年");}}2.importjava.util.Scanner;publicclassTest2{publicstaticvoidmain(String[]args){floatscore;Scannerin=newScanner(System.in);System.out.println("请输入考试成绩:");score=in.nextFloat();if(score>=0&&score<60){System.out.println("T hegradeisE");}elseif(score>=60&&score<70){System.out.println( "ThegradeisD");}elseif(score>=70&&score<80){System.out.println("ThegradeisC");}elseif(score>=80&&score<90){Syste m.out.println("ThegradeisB");}else{System.out.println("ThegradeisA");}}}3.importjava.util.Scanner;publicclassTest3{publicstaticvoidmain(String[]args){inttotalmoney=2500,year;floatpaymoney;Scannerin=newScanner(System.in);System.o ut.println("请输入缴费年数:");year=in.nextInt();switch(year){case1:paymoney=totalmoney;break;case2:paymoney=totalmoney0.9;break;ca se3:paymoney=totalmoney0.85;break;default:paymoney=totalmo ney0.8}System.out.println("实际缴费金额为:",+paymoney);}}第5章一、选择题BBCDDCBCBC二、编程题1.publicclassProgramme1{publicstaticvoidmain(String[]args){intsum=0;//水仙花的总数for(inti=100;i<1000;i++){intbite=i%10;//求得个位intten=i/10%10;//求得十位inthundred=i/100;//求得百位//如果符合水仙花条件的数打印出来if(i==(bitebitebite)+(tententen)+(hundredhundredhundred)){System.out.print(i+"");sum++;}}System.out.println("总共有水仙花个数:"+sum);}2.publicclassProgramme2{publicstaticvoidmain(String[]args){intbigDivisor=0;//定义最大公约数intmultiple=0;//定义最小公倍数System.out.println("请输入两个整数:");Scannerscanner=newScanner(System.in);intinput1=scanner.nextInt();//获取第一个数intinput2=scanner.nextInt();//获取第二个数multiple=input1input2;//这个值保存,求公约数后,方便求得最小公倍数inttemp=1;//交换用的中间数if(input2>input1){//确保第一个数不小于第二个数temp=input1;input1=input2;input2=temp;}while(tem p!=0){//求余结果不等于零,就一直循环temp=input1%input2;//求余结果input1=input2;//大的数已经没用了,用小的数替代input2=temp;//把求余的结果赋值给小的数}bigDivisor=input1;//最后一次求余结果为零时,被求余的数multiple=multiple/bigDivisor;System.out.println("最大公约数是:"+bigDivisor);System.out.println("最小公倍数是:"+multiple);scanner.close();}}3.publicclassProgramme3{publicstaticvoid main(String[]args){System.out.println("1000以内的因数有:");for(inti=1;i<=1000;i++){intsum=0;//所有因数的总和for(intj=1;j if(i%j==0){//判断范围内的所有j相加,就是因数总和sum=sum+j;if(i==sum){System.out.print(i+"");}}}}}}4.publicclassProgramme4{publicstaticvoidmain(String[]args){intsum=0;for(intbite=1;bite<5;bite++){for(intten=1;ten<5;ten++){for(inthundred=1;hundred< 5;hundred++){if(bite!=ten&&bite!=hundred&&ten!=hundred){ //符合条件的数字System.out.print((hundred100+ten10+bite)+"");sum++;//计算个数if(sum%10==0){//十个一行System.out.println();}}}}}System.out.println("\n总共有:"+sum+"个这样的数");}}第6章一、选择题ADBAB二、编程题1.publicclassProgramme1{publicstaticvoidmain(String[]args){int[]num=newint[ 4];//存放四位数的个十百千位System.out.println("请输入一个四位数:");Scannerscanner=newScanner(System.in);intinput=scanner.nextInt();for(inti= 0;i<4;i++){//逐次取位,从个位开始,并按要求替换num[i]=(input%10+5)%10;input/=10;}//按要求替换,交换1、4位inttemp=0;//交换数temp=num[0];num[0]=num[3];num[3]=temp;//交换2、3位temp=num[1];num[1]=num[2];num[2]=temp;System.out.println("加密后的结果:"+num[3]+num[2]+num[1]+num[0]);scanner.close();}}2.publicclassProgramme2{publicstaticvoidmain(S tring[]args){int[]luckTickets=newint[7];Randomr=newRandom();for(inti=0;iextInt(8)+1;for(intj=0;j[j]){i--;break;}}}for(inti=0;istem.out.print(luckTickets[i]+",");}}}第7章一、选择题ACCDDCCBCA二、编程题classStudent{Stringname;Stringsex;Stringmark;voidprintName(){System.out.println("name:"+);}voidprintMark( ){System.out.println("mark:"+this.mark);}}classStudent{publicStudent(){System.out.println("一个学生被创建了");}publicStudent(Stringname,Stringsex){System.out.println("姓名:"+name+",性别:"+sex+",被创建了");}}packagePackageOnepublicclassFirstClass{inta=1;publicFirstClass(){System.out.printIn(a);}}publicclassFirstSubClassextendsFirstClass{}importPackageOne.FirstSu bClass;publicclassSecondPackage{publicstaticvoidmain(String[]a rgs){FirstSubClassfirstSubClass=newFirstSubClass();}}第八章一、选择题CABDABABAD二、填空题1.newcatch2.throwthrows3.Finally4.catch5.catch上层程序代码6.thrownewNullPointerException();thrownewClassCastException("类型转换出错");7.catchfinally三、编程题参考代码如下publicclassDemo02{publicstaticvoidmain(String[]args){doubles=0;s=area(-4);System.out.println(s);}publicstaticdoublearea(doubler){try{if(r<=0){thrownewRuntimeException();}}catch(Exceptione){e.printStackTrace();}doubles=Math.PIrr;returns;}第九章一、选择题CDABBDCCCC二、填空题1.Border 布局管理器2.ADD3.isSelected()getText();4.GridLayout5.下拉列表三、编程题1.参考代码importjavax.swing.;publicclassjavaGuiextendsJFrame{JButtonjb;JLabeljl; publicjavaGui(){this.setSize(240,120);this.setTitle("图形用户界面");jl=newJLabel("请点击按钮:");jb=newJButton("按钮");jl.setBounds(30,20,90,30);jb.setBounds(120,20,80,30);this.setLayout(null);this.add( jl);this.add(jb);this.setLocationRelativeTo(null);//窗口居中this.setVisible(true);//设置窗口可见}publicstaticvoidmain(Stringargs[]){javaGuijg=newjavaGui();}}2.参考代码importjava.awt.;importjavax.swing.;publicclassFlowLayoutDemo{ publicstaticvoidmain(Stringargs[]){JFrameframe=newJFrame("Fl owLayout布局");Containerc=frame.getContentPane();FlowLayoutf=newFlowLa yout(FlowLayout.LEFT,10,10);c.setLayout(f);for(inti=1;i<=5;i++){c .add(newJButton("按钮"+i));}frame.setSize(250,200);frame.setVisible(true);}}第10章一、选择题ADCABDADDB。
Java语言程序设计基础教程(Java API)ppt.ppt
1.equals方法的使用
class ep5_1_a {
int x = 1;
}
class ep5_1 {
public static void main(String args[]) {
ep5_1_a One = new ep5_1_a();
导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。
当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾 回收器调用此方法。
Object类的equals方法比较两个对象是否相等, 实现对象上差别可能性最大的相等关系;对于 任何非空引用值 x 和 y,当且仅当 x 和 y 引用 同一个对象时,此方法才返回 true。
//方法体为空
在构造子类实例时,都会先调用这个默认构造 方法。
Object类中主要的方法如表5-1所示。
方法
public Boolean equals(Object obj) public final Class getClass() public String toString() protected Object clone() public int hashCode() public final void notify() public final void notifyAll()
6)java.applet包:含有控制HTML文档格式、 应用程序中的声音等资源的类,其中Applet类 是用来创建包含于HTML的Applet必不可少的 类。
7)java.beans包:定义了应用程序编程接口 (API),Java Beans是Java应用程序环境的 中性平台组件结构。
《Java语言程序设计(基础篇)》(第10版梁勇著)第三章练习题答案
《Java语言程序设计(基础篇)》(第10版梁勇著)第三章练习题答案《Java语言程序设计(基础篇)》(第10版梁勇著)第三章练习题答案3.1public class Exercise03_01 {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("Enter a, b, c: ");double a = input.nextDouble();double b = input.nextDouble();double c = input.nextDouble();double discriminant = b * b - 4 * a * c;if (discriminant < 0) {System.out.println("The equation has no real roots");}else if (discriminant == 0) {double r1 = -b / (2 * a);System.out.println("The equation has one root " + r1);}else { // (discriminant > 0)double r1 = (-b + Math.pow(discriminant, 0.5)) / (2 * a);double r2 = (-b - Math.pow(discriminant, 0.5)) / (2 * a);System.out.println("The equation has two roots " + r1 + " and " + r2);}}}3.1附加public class Exercise03_01Extra {public static void main(String args[]) {Scanner input = new Scanner(System.in);System.out.print("Enter a numerator: ");int numerator = input.nextInt();System.out.print("Enter a denominator: ");int denominator = input.nextInt();if (numerator < denominator) {System.out.println(numerator + " / " + denominator + " is a proper fraction");}else if (numerator % denominator == 0) {System.out.print(numerator + " / " + denominator + " is an improper fraction ");System.out.println("and it can be reduced to " + numerator / denominator);}else {System.out.print(numerator + " / " + denominator + " is an improper fraction ");System.out.println("and its mixed fraction is " + numerator / denominator + " + " +numerator % denominator + " / " + denominator);}}}3.2public class Exercise03_02 {public static void main(String[] args) {Scanner input = new Scanner(System.in);int number1 = (int)(System.currentTimeMillis() % 10);int number2 = (int)(System.currentTimeMillis() * 7 % 10);int number3 = (int)(System.currentTimeMillis() * 3 % 10);System.out.print("What is " + number1 + " + " + number2 + " + " +number3 + "? ");int answer = input.nextInt();System.out.println(number1 + " + " + number2 + " + " + number3 +" = " + answer + " is " +(number1 + number2 + number3 == answer));}}3.2附加public class Exercise03_02Extra {public static void main(String args[]) {Scanner input = new Scanner(System.in);System.out.print("Enter the coordinates for two points: ");double x1 = input.nextDouble();double y1 = input.nextDouble();double x2 = input.nextDouble();double y2 = input.nextDouble();double m = (y2 - y1) / (x2 - x1);double b = y1 - m * x1;System.out.print("The line equation for two points (" + x1 + ", " + y1 + ") and (" + x2 + ", " + y2 + ") is " + "y = ");if (m == -1)System.out.print("-x");else if (m == 1)System.out.print("x");elseSystem.out.print(m + "x");if (b > 0)System.out.println(" + " + b);else if (b < 0)System.out.println(" - " + (-1 * b));else// b is 0System.out.println();}}3.3public class Exercise03_03 {public static void main(String[] args) {Scanner input = new Scanner(System.in); System.out.print("Enter a, b, c, d, e, f: ");double a = input.nextDouble();double b = input.nextDouble();double c = input.nextDouble();double d = input.nextDouble();double e = input.nextDouble();double f = input.nextDouble();double detA = a * d - b * c;if (detA == 0) {System.out.println("The equation has no solution"); }else {double x = (e * d - b * f) / detA;double y = (a * f- e * c) / detA;System.out.println("x is " + x + " and y is " + y);}}}3.3附加public class Exercise03_03Extra {public static void main(String[] args) {final double RADIUS = 5;double angle = Math.random() * 2 * Math.PI;double x = RADIUS * Math.random() * Math.cos(angle);double y = RADIUS * Math.sin(angle);double distance = Math.pow(x * x + y * y, 0.5);System.out.println("The point is (" + x + ", " + y + ") and its distance to the center is " + distance);}}3.4public class Exercise03_04 {public static void main(String[] args) {int number = (int)(Math.random() * 12) + 1;// or int number = (int)(System.currentTimeMillis() % 12 + 1);// or int number = (int)(Math.random() * 12) + 1;if (number == 1)System.out.println("Month is Januaray");else if (number == 2)System.out.println("Month is Feburary");else if (number == 3)System.out.println("Month is March");else if (number == 4)System.out.println("Month is April");else if (number == 5)System.out.println("Month is May");else if (number == 6)System.out.println("Month is June");else if (number == 7)System.out.println("Month is July");else if (number == 8)System.out.println("Month is August");else if (number == 9)System.out.println("Month is September");else if (number == 10)System.out.println("Month is October");else if (number == 11)System.out.println("Month is November");else// if (number == 12)System.out.println("Month is December");}}3.5public class Exercise03_05 {public static void main(String[] args) {java.util.Scanner input = new java.util.Scanner(System.in);// Prompt the user to enter an integer for todaySystem.out.print("Enter today抯 day: ");int today = input.nextInt();System.out.print("Enter the number of days elapsed since today: ");int elapsedDays = input.nextInt();String nameForToday;if (today == 0)nameForToday = "Sunday";else if (today == 1)nameForToday = "Monday";else if (today == 2)nameForToday = "Tuesday";else if (today == 3)nameForToday = "Wednesday";else if (today == 4)nameForToday = "Thursday";else if (today == 5)nameForToday = "Friday";else// if (today == 6)nameForToday = "Saturday";int futureDay = (today + elapsedDays) % 7; String nameForFutureDay;if (futureDay == 0)nameForFutureDay = "Sunday";else if (futureDay == 1) nameForFutureDay = "Monday";else if (futureDay == 2) nameForFutureDay = "Tuesday";else if (futureDay == 3) nameForFutureDay = "Wednesday";else if (futureDay == 4) nameForFutureDay = "Thursday";else if (futureDay == 5) nameForFutureDay = "Friday";else// if (futureDay == 6) nameForFutureDay = "Saturday";System.out.println("Today is " + nameForToday+ " and the future day is " + nameForFutureDay); } }3.6public class Exercise03_06 {public static void main(String[] args) {Scanner input = new Scanner(System.in);// Prompt the user to enter weight in pounds System.out.print("Enter weight in pounds: "); double weight = input.nextDouble();// Prompt the user to enter heightSystem.out.print("Enter feet: ");double feet = input.nextDouble();System.out.print("Enter inches: ");double inches = input.nextDouble();double height = feet * 12 + inches;// Compute BMIdouble bmi = weight * 0.45359237 / ((height * 0.0254) * (height * 0.0254));// Display resultSystem.out.println("BMI is " + bmi);if (bmi < 18.5)System.out.println("Underweight");else if (bmi < 25)System.out.println("Normal");else if (bmi < 30)System.out.println("Overweight");elseSystem.out.println("Obese");}}3.7/** Break down an amount into smaller units* Display the non-zero denominations only, and display singular* words for single units like 1 dollars, 1 penny, and display plural * words for more than one unit like 2 dollars, 3 pennies.*/public class Exercise03_07 {// Main methodpublic static void main(String[] args) {java.util.Scanner input = new java.util.Scanner(System.in);// Receive the amount entered from the keyboardSystem.out.print("Enter an amount in double, for example 11.56: ");double amount = input.nextDouble();int remainingAmount = (int)(amount * 100);// Find the number of one dollarsint numberOfOneDollars = remainingAmount / 100;remainingAmount = remainingAmount % 100;// Find the number of quarters in the remaining amountint numberOfQuarters = remainingAmount / 25;remainingAmount = remainingAmount % 25;// Find the number of dimes in the remaining amountint numberOfDimes = remainingAmount / 10;remainingAmount = remainingAmount % 10;// Find the number of nickels in the remaining amountint numberOfNickels = remainingAmount / 5;remainingAmount = remainingAmount % 5;// Find the number of pennies in the remaining amountint numberOfPennies = remainingAmount;// Display resultsif (amount < 0) {System.out.println("Your amount is negative");System.exit(1);}else if (amount < 0) {System.out.println("Your amount is zero");System.exit(2);}System.out.println("Your amount " + amount + " consists of ");if (numberOfOneDollars > 1)System.out.println(numberOfOneDollars + "\ dollars");else if (numberOfOneDollars == 1)System.out.println(numberOfOneDollars + "\ dollar");if (numberOfQuarters > 1)System.out.println(numberOfQuarters + "\ quarters");else if (numberOfQuarters == 1)System.out.println(numberOfQuarters + "\ quarter");if (numberOfDimes > 1)System.out.println(numberOfDimes + "\ dimes");else if (numberOfDimes == 1)System.out.println(numberOfDimes + "\ dime");if (numberOfNickels > 1)System.out.println(numberOfNickels + "\ nickels");else if (numberOfNickels == 1)System.out.println(numberOfNickels + "\ nickel");if (numberOfPennies > 1)System.out.println(numberOfPennies + "\ pennies");else if (numberOfPennies == 1)System.out.println(numberOfPennies + "\ penny");}}3.8public class Exercise03_08 {public static void main(String[] args) {java.util.Scanner input = new java.util.Scanner(System.in); // Enter three numbersSystem.out.print("Enter three integers: ");int number1 = input.nextInt();int number2 = input.nextInt();int number3 = input.nextInt();if (number1 > number2) {int temp = number1;number1 = number2;number2 = temp;}if (number2 > number3) {int temp = number2;number2 = number3;number3 = temp;}if (number1 > number2) {int temp = number1;number1 = number2;number2 = temp;}System.out.println("The sorted numbers are "+ number1 + " " + number2 + " " + number3);}}public class Exercise03_09 {public static void main(String[] args) {Scanner input = new Scanner(System.in);// Prompt the user to enter an integerSystem.out.print("Enter the first 9 digits of an ISBN as integer: ");int number = input.nextInt();// Calculate checksum (You may write a loop to simplify it in Ch4int checksum =((number / 100000000 % 10) * 1 +(number / 10000000 % 10) * 2 +(number / 1000000 % 10) * 3 +(number / 100000 % 10) * 4 +(number / 10000 % 10) * 5 +(number / 1000 % 10) * 6 +(number / 100 % 10) * 7 +(number / 10 % 10) * 8 +(number % 10) * 9) % 11;System.out.print("The ISBN-10 number is ");// Display leading zeros, improve the solution using loops in the next chapterif (number / 100000000 == 0) {System.out.print("0");if (number / 10000000 == 0) {System.out.print("0");if (number / 1000000 == 0) {System.out.print("0");if (number / 100000 == 0) {System.out.print("0");if (number / 10000 == 0) { System.out.print("0");if (number / 1000 == 0) { System.out.print("0");if (number / 100 == 0) {System.out.print("0");if (number / 10 == 0) {System.out.print("0");if (number == 0) {System.out.print("0");}}}}}}}}}System.out.print(number);if (checksum == 10)System.out.print("X");elseSystem.out.print(checksum);}}3.10public class Exercise03_10 {public static void main(String[] args) {// 1. Generate two random single-digit integersint number1 = (int)(Math.random() * 10);int number2 = (int)(Math.random() * 10);// 2. Prompt the student to answer 搘hat is number1 + number2?? System.out.print("What is " + number1 + " + " + number2 + "? "); Scanner input = new Scanner(System.in);int answer = input.nextInt();// 4. Grade the answer and display the resultString replyString;if (number1 + number2 == answer)replyString = "You are correct!";elsereplyString = "Your answer is wrong.\" + number1 + " + "+ number2 + " should be " + (number1 + number2);System.out.println(replyString);}}3.11public class Exercise03_11 {public static void main(String[] args) {java.util.Scanner input = new java.util.Scanner(System.in);// Prompt the user to enter inputSystem.out.print("Enter a month in the year (e.g., 1 for Jan): ");int month = input.nextInt();System.out.print("Enter a year: ");int year = input.nextInt();int numberOfDaysInMonth = 0;switch (month) {case 1:System.out.print("January " + year);numberOfDaysInMonth = 31;break;case 2:System.out.print("February " + year);if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) { numberOfDaysInMonth = 29;}else {numberOfDaysInMonth = 28;}break;case 3:System.out.print("March " + year);numberOfDaysInMonth = 31;break;case 4:System.out.print("April " + year);numberOfDaysInMonth = 30;break;case 5:System.out.print("May " + year);numberOfDaysInMonth = 31;break;case 6:System.out.print("June " + year);numberOfDaysInMonth = 30;break;case 7:System.out.print("July " + year);numberOfDaysInMonth = 31;break;case 8:System.out.print("August " + year);numberOfDaysInMonth = 31;break;case 9:System.out.print("September " + year);numberOfDaysInMonth = 30;break;case 10:System.out.print("October " + year);numberOfDaysInMonth = 31;break;case 11:System.out.print("November " + year);numberOfDaysInMonth = 30;break;case 12:System.out.print("December " + year);numberOfDaysInMonth = 31;break;}System.out.print(" has " + numberOfDaysInMonth + " days"); }}3.12public class Exercise03_12 {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("Enter a three-digit integer: ");int number = input.nextInt();if (number / 100 == number % 10)System.out.println(number + " is a palindrome");elseSystem.out.println(number + " is not a palindrome");}}3.13public class Exercise03_13 {public static void main(String[] args) {java.util.Scanner input = new java.util.Scanner(System.in);// Prompt the user to enter filing statusSystem.out.print("(0-single filer, 1-married jointly or qualifying widow(er),"+ "\2-married separately, 3-head of household)\" + "Enter the filing status: ");int status = input.nextInt();// Prompt the user to enter taxable incomeSystem.out.print("Enter the taxable income: ");double income = input.nextDouble();// Compute taxdouble tax = 0;if (status == 0) { // Compute tax for single filersif (income <= 8350) {tax = income * 0.10;} else if (income <= 33950) {tax = 8350 * 0.10 + (income - 8350) * 0.15;} else if (income <= 82250) {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (income - 33950)* 0.25; } else if (income <= 171550) {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (82250 - 33950) * 0.25 + (income - 82250) * 0.28;} else if (income <= 372950) {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (82250 - 33950) * 0.25 + (171550 - 82250) * 0.28 + (income - 171550) * 0.33;} else {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (82250 - 33950) * 0.25 + (171550 - 82250) * 0.28 + (372950 - 171550) * 0.33 + (income - 372950) * 0.35;}} else if (status == 1) { // Compute tax for married file jointly if (income <= 16700) {tax = income * 0.10;} else if (income <= 67900) {tax = 16700 * 0.10 + (income - 16700) * 0.15;} else if (income <= 137050) {tax = 16700 * 0.10 + (67900 - 16700) * 0.15 + (income - 67900) * 0.25; } else if (income <= 208850) {tax = 16700 * 0.10 + (67900 - 16700) * 0.15 + (137050 - 67900) * 0.25 + (income - 137050) * 0.28;} else if (income <= 372950) {tax = 16700 * 0.10 + (67900 - 16700) * 0.15 + (137050 - 67900) * 0.25 + (208850 - 137050) * 0.28 + (income - 208850) * 0.33;} else {tax = 16700 * 0.10 + (67900 - 16700) * 0.15 + (137050 - 67900) * 0.25 + (171950 - 137050) * 0.28 + (372950 - 208850) * 0.33+ (income - 372950) * 0.35;}} else if (status == 2) { // Compute tax for married separately if (income <= 8350) {tax = income * 0.10;} else if (income <= 33950) {tax = 8350 * 0.10 + (income - 8350) * 0.15;} else if (income <= 68525) {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (income - 33950) * 0.25; } else if (income <= 104425) {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (68525 - 33950) * 0.25 + (income - 68525) * 0.28;} else if (income <= 186475) {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (68525 - 33950) * 0.25 + (104425 - 68525) * 0.28 + (income - 104425) * 0.33;} else {tax = 8350 * 0.10 + (33950 - 8350) * 0.15 + (68525 - 33950) * 0.25 + (104425 - 68525) * 0.28 + (186475 - 104425) * 0.33 + (income - 186475) * 0.35;}} else if (status == 3) { // Compute tax for head of household if (income <= 11950) {tax = income * 0.10;} else if (income <= 45500) {tax = 11950 * 0.10 + (income - 11950) * 0.15;} else if (income <= 117450) {tax = 11950 * 0.10 + (45500 - 11950) * 0.15 + (income - 45500) * 0.25; } else if (income <= 190200) {tax = 11950 * 0.10 + (45500 - 11950) * 0.15 + (117450 - 45500) * 0.25 + (income - 117450) * 0.28;} else if (income <= 372950) {tax = 11950 * 0.10 + (45500 - 11950) * 0.15 + (117450 - 45500) * 0.25 + (190200 - 117450) * 0.28 + (income - 190200) * 0.33;} else {tax = 11950 * 0.10 + (45500 - 11950) * 0.15 + (117450 - 45500) * 0.25 + (190200 - 117450) * 0.28 + (372950 - 190200) * 0.33+ (income - 372950) * 0.35;}} else {System.out.println("Error: Wrong filing status");System.exit(1);}// Display the resultSystem.out.println("Tax is " + (int) (tax * 100) / 100.0);}}3.14public class Exercise03_14 {public static void main(String[] args) {// Obtain the random number 0 or 1int number = (int)(Math.random() * 2);// Prompt the user to enter a guessjava.util.Scanner input = new java.util.Scanner(System.in);System.out.print("Guess head or tail? " +"Enter 0 for head and 1 for tail: ");int guess = input.nextInt();// Check the guessif (guess == number)System.out.println("Correct guess");else if (number == 0)System.out.println("Sorry, it is a head");elseSystem.out.println("Sorry, it is a tail");}}3.15public class Exercise03_15 {public static void main(String[] args) {// Generate a lotteryint lottery = (int)(Math.random() * 1000);// Prompt the user to enter a guessjava.util.Scanner input = new java.util.Scanner(System.in); System.out.print("Enter your lottery pick (three digits): ");int guess = input.nextInt();// Get digitsint l1 = lottery / 100;int l2 = (lottery % 100) / 10; // l2 = (lottery / 10) % 10int l3 = lottery % 10;int g1 = guess / 100;int g2 = (guess % 100) / 10;int g3 = guess % 10;System.out.println("Lottery is " + lottery);// Check the guessif (guess == lottery)System.out.println("Exact match: you win $10,000");else if (g1 == l1 && g3 == l2 && g2 == l3 ||g2 == l1 && g1 == l2 && g3 == l3 ||g2 == l1 && g3 == l2 && g1 == l3 ||g3 == l1 && g1 == l2 && g2 == l3 ||g3 == l1 && g2 == l2 && g1 == l3)System.out.println("Match all digits: you win $3,000"); else if (g1 == l1 || g1 == l2 || g1 == l3 ||g2 == l1 || g2 == l2 || g2 == l3 ||g3 == l1 || g3 == l2 || g3 == l3)System.out.println("Match one digit: you win $1,000"); elseSystem.out.println("Sorry, no match");}}3.16public class Exercise03_16 {public static void main(String[] args) {double x = Math.random() * 100 - 50;double y = Math.random() * 200 - 100;System.out.println(x + ", " + y);}}3.17public class Exercise03_17 {public static void main(String[] args) {// Generate scissor, rock, paperint computerNumber = (int)(Math.random() * 3);// Prompt the user to enter scissor, rock, or paper java.util.Scanner input = new java.util.Scanner(System.in); System.out.print("scissor (0), rock (1), paper (2): ");int userNumber = input.nextInt();// Check the guessswitch (computerNumber) {case 0:if (userNumber == 0)System.out.print("The computer is scissor. You are scissor too. It is a draw");else if (userNumber == 1)System.out.print("The computer is scissor. You are rock. You won");else if (userNumber == 2)System.out.print("The computer is scissor. You are paper. You lost");break;case 1:if (userNumber == 0)System.out.print("The computer is rock. You are scissor. You lost");else if (userNumber == 1)System.out.print("The computer is rock. You are rock too. It is a draw");else if (userNumber == 2)System.out.print("The computer is rock. You are paper. You won");break;case 2:if (userNumber == 0)System.out.print("The computer is paper. You are scissor. You won");else if (userNumber == 1)System.out.print("The computer is paper. You are rock. You lost");else if (userNumber == 2)System.out.print("The computer is paper. You are paper too.It is a draw");break;}}}3.18public class Exercise03_18 {public static void main(String args[]) {Scanner input = new Scanner(System.in);System.out.print("Enter package weight: ");double w = input.nextDouble();if (w <= 1) {System.out.println("The shipping cost is $3.5");}else if (w <= 3) {System.out.println("The shipping cost is $5.5");}else if (w <= 10) {System.out.println("The shipping cost is $8.5");}else if (w <= 20) {System.out.println("The shipping cost is $10.5");}else {System.out.println("The package cannot be shipped");}}}3.19public class Exercise03_19 {public static void main(String[] args) {java.util.Scanner input = new java.util.Scanner(System.in); // Enter three edgesSystem.out.print("Enter three edges (length in double): ");double edge1 = input.nextDouble();double edge2 = input.nextDouble();double edge3 = input.nextDouble();。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章 Java程序设计概述1.9 练习思考题1、Java运行平台包括三个版本,请选择正确的三项:()A. J2EEB. J2MEC. J2SED. J2E解答:A,B,C2、Java JDK中反编译工具是:()A. javacB. javaC. jdbD. javap解答:D3、public static void main方法的参数描述是:()A. String args[]B. String[] argsC. Strings args[]D. String args解答:A,B4、在Java中,关于CLASSPATH环境变量的说法不正确的是:()A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。
B. 编译器用它来搜索各自的类文件。
C. CLASSPATH是一个目录列表。
D. 解释器用它来搜索各自的类文件。
解答:A5、编译Java Application源文件将产生相应的字节码文件,扩展名为()A. .javaB. .classC. .htmlD. .exe解答:B6、开发与运行Java程序需要经过的三个主要步骤为___编辑源程序____、______编译生成字节码______和_____解释运行字节码____。
7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是_Applet_类的子类并且存储该源程序文件的文件名为_MyApplet.java_。
8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生_3_个文件名与类名相同而扩展名为_.class_的字节码文件。
9、开发与运行Java程序需要经过哪些主要步骤和过程?答:1编写Java源文件:使用文本编辑器(edit或记事本),拓展名为.java《Java语言程序设计基础教程》22 2编译Java源文件:使用Java编译器(javac.exe)。
得到字节码文件*.class3运行Java程序:Java应用程序使用Java解释器(java.exe)执行字节码文件。
10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的?答:1.Java程序由类组成。
2.应用程序可以没有public类,小应用程序一定有一个类是public类(主类)。
3.应用程序:如果只有一个类,源文件名与该类的类名相同,拓展名为.java;有多个类时,如果有public类(最多一个),源文件名与public类的类名相同,拓展名是.java;没有public类,源文件名与任何一个类的类名相同即可,拓展名为.java。
11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
第2章 Java基本的程序设计结构2.7练习思考题1、从下面选项中,选择三个有效的标示符:()A. IDoLikeTheLongNameClassB. $byteC. constD. _okE. 3_case解答:A,B,D2、下面哪一项在java中是非法的标识符?()A. $userB. pointC. You&meD. _endline解答:C3、下列不属于Java保留字的是:()A. sizeofB. superC. abstractD. break解答:A4、下面哪些java语句会导致无限循环?( )I、while (true) i = 0;II、 while (false) i = 1;III、while (!false) i = 0;《Java语言程序设计基础教程》 3A、仅仅IIIB、I 和IIIC、仅仅ID、I, II 和III解答:B5、下列整型数据类型中,需要内存空间最少的是( )。
A. shortB. longC. intD. byte解答:D6、下面代码执行后,正确的输出结果是:()public class Example {public static void main(String args[]) {int l = 0;do {System.out.println("Doing it for l is:" + l);} while (--l > 0);System.out.println("Finish");}}A. Doing it for l is 3B. Doing it for l is 1C. Doing it for l is 2D. Doing it for l is 0E. Doing it for l is ?C1F. Finish解答:D,F7、若有定义int a=1,b=2; 那么表达式(a++)+(++b) 的值是:()A. 3B. 4C. 5D. 6解答:B8、若有定义int a=9,b=6; 那么a>b的值是:()A. 0B. 1C. falseD. true解答:D9、假定有变量定义: int k=7,x=12; 那么能使值为3的表达式是:()A. x%=(k%=5)B. x%=(k-k%5)C. x%=k-k%5D. (x%=k)-(k%=5)解答:D10、执行完以下代码int[ ] x = new int[25];后,以下说明正确的是:()3《Java语言程序设计基础教程》44A. x[24]为0B. x[24]未定义C. x[25]为0D. x[0]为空解答:A11、Java应用程序的main方法中有以下语句,则输出的结果是()。
int[] x={2,3,-8,7,9};int max=x[0];for(int i=1;i<x.length;i++){if(x[i]>max)max=x[i];}System.out.println(max);A. 2B. -8C. 7D. 9解答:D12、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是()A. 3B. 3.5C. 4D. 5解答:A13、有整型数组:int[] x={2,33,88,5,10};,则调用方法Arrays.sort(x) 后,数组x中的元素值依次是?()A. 88 33 10 5 2B. 2 5 10 33 88C. 88 10 2 33 5D. 5 33 2 10 88解答:B14、下列语句有错误的是:()A. int []a;B. int []b=new int[10];C. int c[]=new int[];D. int d[]=null;解答:C15、下列语句有错误的是:()A. int a[][]=new int[5][5];B. int [][]b=new int[5][5];C. int []c[]=new int[5][5];D. int [][]d=new int[5,5];解答:D16、关于下面的程序,正确的结论是______。
public class ex4_7{public static void main(String args[]){int a[]=new int[5];boolean b[]=new boolean[5];System.out.print(a[1]);《Java语言程序设计基础教程》 5System.out.println(b[2]);}}A. 运行结果为0falseB. 运行结果为1trueC. 程序无法通过编译D. 可以通过编译但结果不确定解答:A17、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用__2__字节内存空间,这样,无论是中文字符还是英文字符,都是占用___2___字节内存空间。
18、设x = 2 ,则表达式( x + + )/3 的值是__0__。
19、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为___ture___和___false___。
20、设有数组定义:int MyIntArray[] = { 10, 20, 30, 40, 50, 60, 70 };则执行以下几个语句后的输出结果是: 120 。
int MyIntArray[] = { 10, 20, 30, 40, 50, 60, 70 };int s = 0;for (int i = 0; i < MyIntArray.length; i++)if (i % 2 == 1)s += MyIntArray[i];System.out.println(s);21、数组对象的长度在数组对象创建之后,就___不能___改变。
数组元素的下标总是从__0__开始。
22、对于数组int[][]t={{1,2,3},{4,5,6}}来说,t.length等于__6___,t[0].length等于__3___。
23、已知数组a的定义为“int a[]={1,2,3,4,5};”,则a[2]=__3__,数组b的定义为“int b[]=new int[5];”,则b[2]=___0___,数组c的定义为“Object []c=new Object[5];”,则c[2]=___0___。
24、调用数组元素时,用__一个统一的数组名__和___一个下标___来唯一确定数组中的元素。
25、什么是数组?数组有哪些特点?Java中创建数组需要哪些步骤?如何访问数组的第一个元素?答:数组是一组具有相同数据类型的数据的有序结合。
26、编程计算10~20的整数的平方值,将结果保存在一个数组中。
27、编写一个程序使之从键盘读入10个整数存入整型数组a中,然后逆序输出这10个整数。
28、某人有5张3分和4张5分的邮票,请编写一个程序,计算由这些邮票中的1张或若干张可以得到多少种不同的邮资。
29、分析写出下列程序完成的功能。
public class sun {public static void main(String args[]) {5《Java语言程序设计基础教程》66double sum = 0.0;for (int i = 1; i <= 100; i++)sum += 1.0 / (double) i;System.out.println("sum=" + sum);}}30、编写一个字符界面的Java Application程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。
31、如果我国经济以每年10%的速度保持稳定增长,请编写一个程序,计算每年达到多少,多少年可以实现总量翻两番。