JAVA作业
- 格式:docx
- 大小:18.46 KB
- 文档页数:6
翁凯的Java第七周作业第一部分:介绍翁凯1. 翁凯是一名资深的软件工程师,拥有丰富的开发经验和扎实的编程基础。
2. 他在互联网行业工作多年,曾在多家知名互联网企业担任重要技术职位。
3. 翁凯擅长Java编程,对Java技术有深入的理解和丰富的实战经验。
第二部分:Java第七周作业1. 作业内容:翁凯的Java第七周作业主要包括以下几个部分:面向对象编程、异常处理、多线程编程等。
2. 面向对象编程:翁凯在作业中通过设计类和对象的方式,实现了对现实世界问题的建模和求解。
他充分运用了面向对象的特性,如封装、继承和多态,使得代码结构清晰、逻辑严谨。
3. 异常处理:在作业中,翁凯充分考虑了程序可能出现的异常情况,并进行了相应的处理。
他使用try-catch-finally语句块,对可能出现的异常进行捕获和处理,保证了程序的稳定性和可靠性。
4. 多线程编程:翁凯在作业中还涉及了多线程编程的内容,他充分利用Java提供的多线程机制,实现了并发执行的效果,提高了程序的性能和响应速度。
第三部分:作业优点和亮点1. 作业的优点:翁凯的作业在代码逻辑上清晰,结构上合理,且符合面向对象编程的思想和规范。
他的异常处理能力较强,程序健壮性良好。
在多线程编程方面,翁凯能够合理运用多线程技术,提高程序的运行效率,体现了他在并发编程方面的能力。
2. 作业的亮点:翁凯在作业中展现了对Java编程语言的深刻理解和熟练应用,尤其是对面向对象编程和多线程编程方面的技术。
他的作业不仅能够完成基本的功能需求,还体现了一定的创新和扩展能力,展现了优秀的编程思维和能力。
第四部分:总结1. 翁凯的Java第七周作业展现了他优秀的编程能力和技术功底。
他在作业中展现了对面向对象编程、异常处理和多线程编程等方面的深入理解和熟练应用,展现了一名优秀软件工程师应有的专业素养和技术水平。
期待翁凯在以后的学习和工作中继续发挥自己的优势,取得更好的成绩和进步。
一、选择题1、以下关于对象的说法不正确的是(D )。
A 组成客观世界(事物)的不同实体可以看成是对象B 对象是一个具有封装性和信息隐藏的独立模块C 对象可以分解和组合,还可以通过相似性原理进行分类和抽象D对象可以更好地模拟计算机的工作方式,体现计算机运行规律,提高程序执行效率。
2、面向对象的特点主要概括为( C )。
A可分解性、可组合性、可分类性B继承性、封装性和多态性C抽象性、继承性、封装性和多态性D封装性、易维护性、可扩展性、可重用性3、以下论述不正确的是(C )。
A对象变量时对象的一个引用B对象是类的一个实例C一个对象可以作为另一个对象的数据成员D对象不可以作为函数的参数传递4、对象之间的继承关系是(D )。
A has-aB is-aC use-aDof-a5、以下Bridge与Road之间是(D )关系。
class Bridge{Road road;}class Road{String name;}A has-aB is-aC use-aD f-a6、要使某个类能被同一个包中的其他类访问,但不能被这个包以外的类访问,可以(A )。
A让该类不使用任何关键字B使用private关键字C 使用final关键字D使用protected关键字7、Java中最基本的类是(D )。
A WindowB ComponentC ObjectD Class8、以下代码将在屏幕上显示的是字符(C )。
Boolean b1=new Boolean(true);Boolean b2=new Boolean(true);if(b1==b2)if(b1.equals(b2))System.out.println("a");elseSystem.out.println("b");elseif(b1.equals(b2))System.out.println("c");elseSystem.out.println("d");A aB bC cD d9、分析以下程序的运行结果,得到的结论是( D )public class MyClass {String s;public static void main(String[] args) { MyClass m=new MyClass();m.go();}void MyClass(){s="constructor";}void go(){System.out.println(s);}}A 程序可以运行,但屏幕没有输出任何字符。
第1章问答题及作业题第1章问答题1、发明Java语言的原因是什么?发明Java语言的主要贡献者是谁?2、“Java编译器将源文件编译生成的字节码是机器码”,这句话正确吗?3、Java程序的主类必须含有怎样的方法?4、“Java应用程序必须含有一个类是public类”,这句话正确吗?5、“Java Applet程序的主类必须是public类”,这句话正确吗?6、请叙述Java源文件的命名规则。
7、源文件生成的字节码在运行时都加载到内存中吗?8、怎样编写加载运行Java Applet的简单网页?9、编译器使用“-source”参数的作用是什么?“-source”参数的默认取值是什么?第1章作业题1.参照例1-1编写一个Java应用程序,程序能在命令行中输出“早上好,Good Morning”。
2.参照例1-2编写一个Java Applet程序,程序能在浏览器中显示“你好,Hello”。
第2章问答题及作业题第2章问答题1、什么是标识符?标识符的规则是什么?2、什么是关键字?请说出5个关键字。
3、Java的基本数据类型是什么?4、下列哪些语句是错误的?int x=120;byte b=120;b=x;5、下列哪些语句是错误的?float x=12.0;float y=12;double d=12;y=d;6、下列两条语句的作用是等价的吗?char x=97;char x=’a’;7、下列语句输出的结果是什么?int a=97;byte b1=(byte)128;byte b2=(byte)-129;System.out.printf(“%c,%d,%d”,a,b1,b2);8、数组是基本数据类型吗?怎样获取一维数组的长度?9、假设有两个int类型数组:int[] a=new int[10];int[] b=new int[8];b=a;a[0]=100;b[0]的值一定是100吗?10、下列两条语句的作用等价吗?int[] a={1,2,3,4,5,6,7,8};int[] a=new int[8];}第2章作业题1.参照例2-1编写一个Java应用程序,输出俄文字母表。
Java基础编程练习题一、基本语法1. 编写一个Java程序,输出“Hello, World!”。
2. 声明一个整型变量并赋值为10,然后输出该变量的值。
3. 编写一个Java程序,实现两个整数的加、减、乘、除运算。
4. 编写一个Java程序,判断一个整数是奇数还是偶数。
5. 编写一个Java程序,交换两个变量的值。
二、控制结构1. 使用ifelse语句判断一个年份是否为闰年。
2. 编写一个Java程序,使用for循环输出1到100的所有偶数。
3. 使用while循环计算1+2+3++100的和。
4. 编写一个Java程序,使用dowhile循环输出1到10的所有整数。
5. 使用switch语句实现一个简单的计算器程序,支持加、减、乘、除四种运算。
三、数组1. 声明一个整型数组,并初始化为{1, 2, 3, 4, 5},然后输出数组中的每个元素。
2. 编写一个Java程序,计算数组中所有元素的和。
3. 实现一个方法,用于查找数组中的最大值。
4. 编写一个Java程序,将一个字符串数组按照字母顺序排序。
5. 使用二维数组输出一个5x5的乘法表。
四、字符串操作1. 编写一个Java程序,连接两个字符串。
2. 实现一个方法,判断一个字符串是否为回文。
3. 编写一个Java程序,将字符串中的所有小写字母转换为大写字母。
4. 使用StringBuilder类实现字符串的逆序输出。
5. 编写一个Java程序,计算一个字符串中某个字符出现的次数。
五、面向对象基础1. 创建一个名为Person的类,包含姓名、年龄和性别属性,并提供相应的构造方法和getter/setter方法。
2. 编写一个Java程序,实现两个Person对象的比较(按年龄比较)。
3. 创建一个Student类,继承自Person类,并添加成绩属性。
4. 编写一个Java程序,实现Student类的多态。
5. 创建一个接口Animal,包含吃、睡觉和叫三个方法,然后创建两个类Dog和Cat实现该接口。
一、Java基础语法1.1. 数据类型int a = 10;double b = 3.14;char c = 'A';boolean d = true;1.2. 变量声明与赋值声明一个整型变量并赋值为100。
声明一个字符串变量并赋值为"Hello, World!"。
声明一个布尔型变量并赋值为false。
1.3. 运算符计算 5 + 6 2 的结果。
计算 (10 / 3) 2 的结果。
将变量 a 的值增加 5。
1.4. 条件语句如果变量 a 大于 10,输出 "a is greater than 10"。
如果变量 b 小于 0,输出 "b is negative"。
如果变量 c 等于 'A',输出 "c is 'A'".1.5. 循环语句使用 for 循环输出 1 到 10 的所有整数。
使用 while 循环输出 1 到 5 的所有整数。
使用 dowhile 循环输出 1 到 3 的所有整数。
二、面向对象编程2.1. 类与对象定义一个名为 Person 的类,包含 name 和 age 两个属性。
创建一个 Person 对象,并设置其 name 为 "John" 和 age 为25。
2.2. 构造方法修改 Person 类,添加一个构造方法,接收 name 和 age 作为参数。
创建一个 Person 对象,并使用构造方法设置其属性。
2.3. 方法在 Person 类中添加一个方法,用于输出对象的 name 和 age。
创建一个 Person 对象,并调用其方法输出信息。
2.4. 继承定义一个名为 Student 类,继承自 Person 类。
在 Student 类中添加一个属性:score。
创建一个 Student 对象,并设置其 name、age 和 score。
1.编写程序,用数组实现乘法小九九的存储和输出。
【提示:采用多个一维数组。
】public class Multipation {public static void main(String[] args) {// TODO Auto-generated method stubint x[][]=new int[9][9];for(int i=0;i<9;i++){for(int j=0;j<9;j++){if(i>=j){int m=i+1;int n=j+1;x[i][j]=m*n;System.out.print(m+"*"+n+"="+x[i][j]);}}System.out.println();}}}2. 定义一个类Student,属性为学号、姓名和成绩;方法为增加记录SetRecord和得到记录GetRecord。
SetRecord给出学号、姓名和成绩的赋值,GetRecord通过学号得到考生的成绩。
public class Student {/***@param args*/private int ID;private String name;private float score;public void SetRecord(int ID,String name,float score){this.ID=ID;=name;this.score=score;}public float getRecord(int ID){if(ID==this.ID)return this.score;elsereturn -1;}public static void main(String[] args) {// TODO Auto-generated method stubStudent s=new Student();s.SetRecord(0,"alex",100);float Sco=s.getRecord(0);System.out.print(Sco);}}3.给出上题中设计类的构造函数,要求初始化一条记录(学号、姓名、成绩)。
java基础练习题# Java基础练习题一、选择题1. Java是一种:A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案: B2. Java程序的执行流程是:A. 编译 -> 运行B. 编译 -> 链接 -> 运行C. 编译 -> 翻译 -> 执行D. 编译 -> 执行答案: C3. 下列哪个是Java的关键字:A. `int`B. `float`C. `double`D. `string`答案: A4. Java中,哪个关键字用于定义类:A. `public`B. `class`C. `interface`D. `void`答案: B5. Java中,哪个不是合法的标识符:A. `myClass`B. `class`C. `2variable`D. `Variable`答案: C二、填空题1. Java语言的跨平台特性是通过______实现的。
答案: Java虚拟机(JVM)2. Java的基本数据类型包括:byte, short, int, long, float, double, char, ______。
答案: boolean3. 在Java中,使用______关键字可以定义一个方法。
答案: void 或者其他返回类型4. Java中,一个类可以有多个构造方法,只要它们的______列表不同。
答案:参数5. Java中,`System.out.println()`用于______。
答案:输出信息到控制台三、简答题1. 简述Java的垃圾回收机制。
答案: Java的垃圾回收机制是一种自动内存管理功能,它负责回收不再使用的对象所占用的内存。
垃圾回收器定期检查内存中的对象,识别那些不再被任何引用指向的对象,并将它们从内存中清除,释放内存资源。
2. 描述Java中的继承和多态的概念。
答案:继承是Java中一个类(子类)可以继承另一个类(父类)的属性和方法。
JAVA作业:PP2.3 编写一个应用程序,读取两个浮点数,然后打印输出它们的和、差、乘积。
import javax.swing.*;import java.util.*;public class First {/*** 作业PP2.3 编写一个应用程序,读取两个浮点数,然后打印输出它们的和、差、乘积。
*/public static void main(String[] args) {float f1=0.0f, f2=0.0f;float sum=0.0f;float difference=0.0f;float product=0.0f;String tempstr=JOptionPane.showInputDialog("Input Please");f1=Float.parseFloat(tempstr);tempstr=JOptionPane.showInputDialog("Input Please Again");f2=Float.parseFloat(tempstr);sum=f1+f2;difference=f1-f2;product=f1*f2;JOptionPane.showMessageDialog(null,"The First Number is:"+f1+"\n"+"The Second Number is:"+f2+"\n"+"The Sum is:"+sum+"\n"+"The Differenceis:"+difference+"\n"+"The productis:"+product,"Result",RMATION_MESSAGE);}}PP2.4 编写一个应用程序TempConverter1,读取用户输入的华氏温度,然后转换成摄氏温度。
import javax.swing.*;public class TempConverter1 {/*** 作业PP2.3编写一个应用程序TempConverter1,读取用户输入的华氏温度,然后转换成摄氏温度。
*/public static void main(String[] args) {final int BASE=32;final double CONERSION_FACTOR=5.0/9.0;float fahrenheiTemp;double celsiusTemp;String tempstr=JOptionPane.showInputDialog("Input Please");fahrenheiTemp=Float.parseFloat(tempstr);celsiusTemp=(fahrenheiTemp-BASE)*CONERSION_FACTOR;JOptionPane.showMessageDialog(null,"FahrenheiTempis:"+fahrenheiTemp+"\n"+"CelsiusTempis:"+celsiusTemp,"Result",RMATION_MESSAGE);}}PP2.5 编写一个应用程序,将英里转换为千米(1英里等于1.60935千米)。
以浮点数类型读取用户输入的英里数。
import javax.swing.JOptionPane;public class Third {/*** 作业PP2.5 编写一个应用程序,将英里转换为千米(1英里等于1.60935千米)。
以浮点数类型读取用户输入的英里数。
*/public static void main(String[] args) {final double rewire=1.60935;float mile=0.0f;double kilometer=0.0f;String tempstr=JOptionPane.showInputDialog("Input Please");mile=Float.parseFloat(tempstr);kilometer=mile*rewire;JOptionPane.showMessageDialog(null,"Mileis:"+mile+"\n"+"Kilometer:"+kilometer,"Result",RMATION_MESSAGE) ;}}PP2.6 编写一个应用程序,以小时、分、秒读取时间长度,然后全部换算成秒并打印输出结果(例如,1小时28分42秒等于5322秒)。
import javax.swing.*;public class forth {/*** 作业PP2.6 编写一个应用程序,以小时、分、秒读取时间长度,然后全部换算成秒并打印输出结果(例如,1小时28分42秒等于5322秒)。
*/public static void main(String[] args) {int hour,minute,second,change;final int CONERSION_FACTOR=60;String tempstr=JOptionPane.showInputDialog("Input Hour Please");hour=(int)Float.parseFloat(tempstr);tempstr=JOptionPane.showInputDialog("Input Minute Please");minute=(int)Float.parseFloat(tempstr);tempstr=JOptionPane.showInputDialog("Input Second Please");second=(int)Float.parseFloat(tempstr);change=hour*CONERSION_FACTOR*CONERSION_FACTOR+minute*CONERSIO N_FACTOR+second;JOptionPane.showMessageDialog(null,"The Hour is:"+hour+"\n"+"The Minute is:"+minute+"\n"+"The Second is:"+second+"\n"+"The Change is:"+change,"Result",RMATION_MESSAGE);}}PP2.7 编写一个应用程序,读入一个以秒为单位的时间长度,然后换算成小时、分、秒的组合表达方式并打印输出结果(例如,9999秒等于2小时46分39秒)。
import javax.swing.*;public class firth {/*** 作业PP2.7 编写一个应用程序,读入一个以秒为单位的时间长度,然后换算成小时、分、秒的组合表达方式并打印输出结果(例如,9999秒等于2小时46分39秒)。
*/public static void main(String[] args) {int hour,minute,second,time;final int CONERSION_FACTOR=60;String tempstr=JOptionPane.showInputDialog("Input Time Please");time=(int)Float.parseFloat(tempstr);hour=(int)time/CONERSION_FACTOR/CONERSION_FACTOR;minute=(int)(time-hour*CONERSION_FACTOR*CONERSION_FACTOR)/CONERSION_ FACTOR;second=(int)time-hour*CONERSION_FACTOR*CONERSION_FACTOR-minute*CONER SION_FACTOR;JOptionPane.showMessageDialog(null,"The Time is:"+time+"\n"+"The Hour is:"+hour+"\n"+"The Minute is:"+minute+"\n"+"The Second is:"+second,"Result",RMATION_MESSAGE);}}PP2.9 编写一个应用程序,提示输入一个代表总钱数的双精度值,然后确定每种纸币和硬币需要的最小数量以达到输入的总钱数(假设10人民币为所需要的最大面额)。
例如,如果输入的值为47.63(47元6角3分),那么程序应当输出如下结果:4 ten yuan1 five yuan2 one yuan6 one jiao3 one fenimport javax.swing.*;public class sixth {/*** 作业PP2.9 编写一个应用程序,提示输入一个代表总钱数的双精度值,然后确定每种纸币和硬币需要的最小数量以达到输入的总钱数(假设10人民币为所需要的最大面额)。
*/public static void main(String[] args) {double money;int a,b,c,d,e;final int number=10;final int number1=5;String tempstr=JOptionPane.showInputDialog("Input Money Please");money=(double)Float.parseFloat(tempstr);a=(int) (money/number);b=(int)((money-a*number)/number1);c=(int)((money-a*number-b*number1)/1);d=(int)((money-a*number-b*number1-c*1)*number)/1;e=(int)(((money-a*number-b*number1-c*1)*number*number)%10);JOptionPane.showMessageDialog(null,"The Money is"+" "+money+"\n"+a+" "+"ten yuan"+"\n"+b+" "+"five yuan"+"\n"+c+" "+"one yuan"+"\n"+d+" "+"one jiao"+"\n"+e+" "+"one fen","Result",RMATION_MESSAGE);}}PP2.11 编写一个应用程序,提示输入两个整数分别作为分数的分子和分母,然后打印输出其小数表示。