高级程序设计JAVA离线作业(选)
java程序设计大作业

Java程序设计大作业可能涉及多个方面,具体取决于你的课程要求和教师的要求。
以下是一个可能的Java程序设计大作业的示例:题目:设计并实现一个简单的计算器应用程序。
要求:1. 使用Java编写一个命令行应用程序,能够执行基本的数学运算(加、减、乘、除)。
2. 用户应该能够输入两个数字和一个运算符,程序将根据运算符执行相应的运算并输出结果。
3. 程序应该能够处理不同类型的数字(整数和浮点数)和运算符。
4. 程序应该能够处理输入错误,例如用户输入了无效的运算符或非数字字符。
示例代码:```javaimport java.util.Scanner;public class Calculator {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("请输入第一个数字:");double num1 = scanner.nextDouble();System.out.print("请输入运算符(+、-、*、/):"); String operator = scanner.next();System.out.print("请输入第二个数字:");double num2 = scanner.nextDouble();double result = 0;switch (operator) {case "+":result = num1 + num2;break;case "-":result = num1 - num2;break;case "*":result = num1 * num2;break;case "/":if (num2 == 0) {System.out.println("除数不能为0!");return;} else {result = num1 / num2;}break;default:System.out.println("无效的运算符!");return;}System.out.println(num1 + " " + operator + " " + num2 + " = " + result);}}```在这个示例代码中,我们使用了`Scanner`类从用户那里获取输入。
地大《Java语言程序设计(新)》离线作业 (1)

地大《Java语言程序设计(新)》离线作业一一、简答题1、java类是否可以多继承,怎么实现多继承?(1)java中只能利用接口达到多实现而已,跟多继承相仿(2)java中唯一可以实现多继承的就是接口与接口之间了。
先说继承比如class fu1{void show(){}}class fu2{void show(){}}class zi extends fu1,fu2{void show(){}}这时候创建zi引用调用show方法java 虚拟机就不知道该调用父类的哪个show方法了同理在接口中class fu1{void show();}class fu2{void show();}class zi extends fu1,fu2{void show(){}}接口的fu1 和f2 的show方法都是abstract的抽象的是没有方法体的所以只有子类的show方法是有方法体的所以接口可以多实现也就是变量的多继承所以也可以推出接口与接口之间也是可以多继承的就算接口a 的父类接口b和c都有同一个方法show()但是他们都是抽象方法a继承他们也是抽象的这个不就可以继承了吗? 由实现的例子就可以推出来,接口确实是可以多继承的。
2、请简述面向对象的特点。
(1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。
抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。
比如,我们要设计一个学生成绩管理系统,考察学生这个对象时,我们只关心他的班级、学号、成绩等,而不用去关心他的身高、体重这些信息。
抽象包括两个方面,一是过程抽象,二是数据抽象。
过程抽象是指任何一个明确定义功能的操作都可被使用者看作单个的实体看待,尽管这个操作实际上可能由一系列更低级的操作来完成。
数据抽象定义了数据类型和施加于该类型对象上的操作,并限定了对象的值只能通过使用这些操作修改和观察。
(2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。
浙大《高级程序设计(JAVA)》在线作业

浙大《高级程序设计(JAVA)》在线作业浙大《高级程序设计(JAVA)》在线作业试卷总分:100 测试时间:--单选题多选题判断题、单选题(共 20 道试题,共 40 分。
)1. 在Java中,负责对字节代码解释执行的()A. 垃圾回收器B. 虚拟机C. 编译器D. 多线程机制满分:2 分2. 下面的代码段中,执行之后i 和j 的值是()。
int i = 1; int j; j = i++;A. 1, 1B. 1, 2C. 2, 1D. 2, 2满分:2 分3. "阅读下面程序 class ex3124 { public static void main(String [] args) { boolean b=true; if(b){ int i=1;} else { int i=2;}System.out.println(i);}} 现在想先编译再运行该程序,结果是()。
A. 1B. 2C. 编译出错D. 运行出错满分:2 分4. System类在哪个包中()。
A. java.utilB. java.ioC. java.awtD. /doc/3612736702.html,ng满分:2 分5. 下列运算符中,优先级最高的是()。
A. &&B. ++C. +D. *满分:2 分6. 下面关于Applet的说法正确的是()。
A. Applet也需要main方法B. Applet必须继承自java.awt.AppletC. Applet能访问本地文件D. Applet程序不需要编译满分:2 分7. 下面哪几个函数是public void example(){...}的重载函数()。
A. public void example( int m){...}B. public int example(){...}C. public void example2(){...}D. public int example3 ( int m, float f){...}满分:2 分8. 关于被私有访问控制符private修饰的成员变量,以下说法正确的是()。
云奥学院《java语言程序设计》-离线作业2 参考答案

java语言程序设计-离线作业2参考答案作业内容请使用GUI编程实现如下要求:使用合适布局方式实现如图1所示登录窗口编写按钮事件实现点击登录按钮时,如果用户输入登录代码admin,密码123456则弹出图2所示消息框,否则弹出图3所示消息框;编写重置事件实现点击重置按钮时时将输入框中的值清空。
图1 登录窗口图2 成功提示信息图3 失败提示信息评分标准创建窗口并设置相应属性25分创建输入框15分,创建按钮15分完成登录功能20分,重置功能10分弹出消息框15分参考代码类Person代码:import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPasswordField;import javax.swing.JTextField;import javax.swing.WindowConstants;public class Login {public static void main(String[] args) {new LoginJFrame();}}/*** 登录窗口类* @author web**/class LoginJFrame extends JFrame {/*** 序列化的版本编号*/private static final long serialVersionUID = -107654551461824083L;public LoginJFrame() {setTitle("系统登录");//设置标题栏setSize(400, 300);//设置窗口大小setLocation(650, 300);//设置窗口位置setResizable(false);//设置不可更改窗口大小setLocationRelativeTo(null);//窗口居中显示setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//设置关闭方式Container container = getContentPane();//添加一个容器container.setLayout(null);//设置布局管理器为nullJLabel n = new JLabel("用户名:");//生成name 标签JLabel pw = new JLabel("密码:");//生成password 标签JTextField name = new JTextField(30);//生成name 输入框JPasswordField password = new JPasswordField(30);//生成password 输入框JButton login = new JButton("登陆");//生成登陆按钮JButton reset = new JButton("重置");//生成重置按钮/** 设置各个模块的位置和大小*/n.setBounds(60, 50, 120, 30);name.setBounds(120, 50, 180, 30);pw.setBounds(60, 100, 120, 30);password.setBounds(120, 100, 180, 30);login.setBounds(100, 180, 70, 30);reset.setBounds(220, 180, 70, 30);container.add(n);container.add(name);container.add(pw);container.add(password);container.add(login);container.add(reset);/** 给登陆按钮添加动作事件*/login.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {if(name.getText().trim().length() == 0 || new String(password.getPassword()).trim().length() == 0) {JOptionPane.showMessageDialog(null, "用户名,密码不能为空");//显示对话框return;}if(name.getText().equals("admin") && new String(password.getPassword()).equals("123456")) {JOptionPane.showMessageDialog(null, "登陆成功");return;} else {JOptionPane.showMessageDialog(null, "用户名或密码不正确");return;}}});/** 给重置按钮添加动作事件*/reset.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent arg0) {name.setText("");password.setText("");}});setVisible(true);}}。
大工10春《Java程序设计》在线作业1-4

7. Java虚拟机简称为()。
A. API
B. OS
C. JPI
D. JVM
满分:3 分
8. 下面哪个赋值语句是合法的()?
A. float a=2.0z
B. double b=2.0
C. int c=2a
D. long d=2c
C. class A implements B
D. class B extends A
满分:3 分
19. 定义类头时,不可能用到的关键字是()。
A. null
B. class
C. extends
D. implements
满分:3 分
20. 下列哪一种叙述是正确的()
大工10春《Java程序设计》在线作业1
单选:DCDAB\CDBDD\BCCCA\DDAAA
多选:ABCD\BCD\BC\ABC\AC
判断:XVXVV
大工10春《Java程序设计》在线作业2
单选:ACDCB\DACCC\CBDCB\ACDAD
多选:CD\ABCD\AC\CD\ABC
判断:XXXXV
B. Boolean
C. Class
D. Object
满分:3 分
7. 在Java中,所有类的根类是()。
A. ng.Object
B. ng.Class
C. java.applet.Applet
D. java.awt.Frame
满分:3 分
D. 对具体问题只需给出其功能实现方法,而不必给出其特征属性的定义。
满分:3 分
5. 下面哪一个不是正确的标识符().
Java程序设计2022年秋学期在线作业1答卷

Java程序设计19春在线作业1-0001
试卷总分:100 得分:100
一、单选题(共10 道试题,共30 分)
1.关于以下代码所画图形的说明,正确的是()
A.一条40像素长的垂直红线,一个边长为150像素的红色四方形
B.一条40像素长的垂直黑线,一个边长为150像素的红色四方形
C.一条50像素长的垂直黑线,一个边长为150像素的红色四方形
D.一条50像素长的垂直红线,一个边长为150像素的红色四方形
答案:B
2.常见的面向对象的程序设计语言包括()
A.Pascal
B.Fortran
C.Java
D.C
答案:C
3.为了使包ch4在当前程序中可见,可以使用的语句是().
A.import ch4.*;
B.package ch4.*;
C.ch4 imporl,;
D.ch4 package
答案:D
4.编译一个定义了3个类和10个办法的Java源文件后,会产生多少个字符码文件,扩展名是什么?()
A.13个字节码文件,扩展名是.class
B.1个字节码文件,扩展名是.class
C.3个字节码文件,扩展名是.java
D.3个字节码文件,扩展名是.class
答案:D
5.若有定义int a=1,b=2; 则表达式(a++)+(++b) 的值是()
A.3
B.4
C.5
D.6
答案:B
6.JApplet的默认布局管理器是()。
A.FlowLayout
B.BorderLayout
C.GridLayout
D.BoxLayout。
Java高级语言程序设计作业一

作业一:银行账户类的设计---定义类作业:定义类实验题目:建一个banking包,在这个包里,创建一个账户类Account。
实验目的:定义类提示:1.在banking包下创建Account类。
a.声明一个私有对象属性:balance。
b.声明一个公有构造器,这个构造器带有一个代表对象属性的参数(init_balance)c.声明一个公有存取器来访问该对象属性,方法 getBalance(),返回相应的属性。
d.声明公有方法deposit(),用来实现存钱功能,有一个参数amt,表示存入的钱数。
e.声明公有方法withdraw(),用来表示取现,有一个参数amt,表示取现的数量。
//定义一个账户package banking;publicclass Account {privatedouble balance;//帐户的当前(或即时)余额public Account(double init_balance){balance= init_balance;}publicdouble getBalance彩蛋// 获取账户余额{return balance;}public void setBalance(double balance){this.balance = balance;}public void deposit(double amt)// 存钱, amt存钱的额度{balance+=amt;//balance=balance+amt}public void withdraw(double amt) // 取钱, amt取钱的额度{if(balance>=amt)。
北交21秋《JAVA语言设计》课程离线作业75分

北交《JAVA语言设计》课程离线作业作答要求:(1)本课程离线作业共2道大题,每道大题50分。
(2)请分别在每道题目下直接进行作答,作答后上传Word文档到平台上。
(3)作图题或作答内容中包含公式、设计图的题目,可以手写作答内容,然后将作答内容的清晰扫描图片插入到Word文档内对应的题目下。
一、程序设计题(共1题,总分值50分)编写一个程序,将下面的一段文本中的各个单词的字母顺序翻转,“To be or not to be",将变成"oT eb ro ton ot eb."。
二、系统设计题(共1题,总分值50分)银行存款系统简易原型a)定义一个存款接口saveInterface,接口中包含一个save方法,用于执行存款行为。
b)定义一个查询接口inquireInterface,接口包含一个查询方法,用于执行查询行为。
c)基于以上两个接口定义一个储蓄类Deposit。
该类包含一个私有成员amout,用于表示存款金额。
在入口主程序中声明一个Despoit对象,并分别用saveInterface,inquireInterface 访问各自对应的方法,完成查询和存款行为。
解:SaveInterface 接口:package n.sys;public interface SaveInterface {//存款public void save(double amount);}InquireInterface 接口:package n.sys;public interface InquireInterface {//查询public double query();}Deposit类:package n.sys;public class Deposit implements SaveInterface,InquireInterface{ private double amount=0.0;@Overridepublic double query() {return amount;}@Overridepublic void save(double amount) {this.amount=amount;}}主类:import n.sys.Deposit;import java.util.Scanner;public class MainClass {public static void main(String[] args) {Deposit deposit=new Deposit();double balance;balance=deposit.query();System.out.println("当前余额为:"+balance);System.out.println("请输入你要存款的金额:");Scanner scanner=new Scanner(System.in);double amount=scanner.nextDouble();deposit.save(amount);balance=deposit.query();System.out.println("当前余额为:"+balance);}}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浙江大学远程教育学院《高级程序设计JA V A》课程作业(选做)姓名:王媛学号:717070032002年级:2017秋学习中心:余杭学习中心—————————————————————————————第一章1.简述面向过程问题求解和面向对象问题求解的异同。
两者都是运用计算机来解决一定问题而制作的软件程序。
1)中心思想不同。
前者是用计算机能够理解的逻辑来描述和表达待解决的问题及其具体的解决过程。
后者是以具体的解题过程为研究和实现的主体2)核心组成不同。
数据结构、算法是面向过程问题求解的核心组成。
对象、类与实体是对象问题求解的核心组成。
3)解决方法不同。
前者将现实世界的问题抽象成计算机可以理解和处理的数据结构,后者是要让计算机逻辑来模拟现实世界的物理存在,让计算机世界向现实世界靠拢2.面向对象的程序设计方法有哪些优点?优点:1)可重用性,一个软件项目中所开发的模块,能够不仅限于在这个项目中使用,而且可以重复地使用在其他项目中,从而在多个不同的系统中发挥作用。
2)可扩展性,对现代应用软件提出的又一个重要要求,即要求应用软件能够很方便、容易地进行扩充和修改的范围不但涉及到软件的内容,也涉及到软件的形式和工作机制。
可扩展性使得面向对象程序设计法特别适合于在快速原型的软件开发方法中使用,也体现它对模块化技术的更有效的支持。
3)可管理性,面向对象的开发方法采用内涵比过程和函数丰富、复杂得多的类作为构建系统的部件,使整个项目的组织更加合理、方便。
第二章1.编写一个Java Application,利用JDK软件包中的工具编译并运行这个程序,在屏幕上输出“Welcome to Java World!”。
public class Ex2_3{public static void main(String[] args){System.out.println("Welcom to java vorld");}}2.编写一个Java Applet,使之能够在浏览器中显示“Welcome to Java Applet World!”的串信息。
import java.applet.*;public class Ex2_4 extends Applet { //an appletpublic void paint(Graphics g){g.drawString ("Welcome to Java Applet World!",20,20);}}3.Java 语言有哪些主要特点?1)平台无关性。
其独特的运行机制使得它具有良好的二进制级的可移植性,利用Java,开发人员可编写出与具体平台无关、普遍适用的应用程序,大大降低了开发、维护和管理的开销。
2)面向对象。
3)安全稳定。
特有的“沙箱”机制是其安全性的保障。
4)支持多线程。
允许同一个程序有两个执行线索,满足一些复杂软件的需求。
5)简单易学。
去除C++中不容易理解和掌握的部分,同时保证它的基本语法部分与C语言几乎一模一样,降低学习难度。
第三章习题:1.编写程序输出用户指定数据的所有素数因子public class Ex3_15{public static void main(String[] args){try{BufferedReader in = new BufferedReader(new InputStreamReader(System in)System.out.print("请输入一个正整数: ");String s = in.readLine();int a = Integer.parseInt( s );System.out.println( a + "的所有素因子包括: ");for( int i=2; i<=a; i++ ){if( a%i==0 && isPrime(i) ){System.out.println( i );}}}catch(IOException e){}}public static boolean isPrime( int a )//{if( a <= 1 ) return false;for( int i=2; i<a; i++ )if( a % i == 0 ) return false;return true;}}2.编写一个Java程序,接受用户输入的一个1――12之间的整数(如果输入的数据不满足这个条件,则要求用户重新输入),利用switch语句输出对应的月份的天数。
3.Java对标识符命名有什么规定,下面这些标识符哪些是对的?哪些是错的,错在哪里?(1)MyGame (2)_isHers (3) 2JavaProgram (4) Java-Visual-Machine (5) _$abc答:标识符可以由编程者自由指定,但是需要遵循—定的语法规定。
标识符要满足如下的的规定(1)标识符可以由字母、数字和下划线(_)、美元符号($)组合而成(2)标识符必须以字母、下划线或美元符号开头,不能以数字开头。
在实际应用标识符时,应该使标识符能一定程度上反映它所表示的变量、常量、对象或类的意义,这样程序的可读性会更好。
题中的标识符中的(3)不对,因为用数字开头了,(4)也不对,因为其中用了减号。
第四章1.有哪些访问控制符?哪些可以用于修饰类,哪些用来修饰域和方法,试述不同访问控制符的作用。
答:访问控制符是指public/private/protected等表示访问控制(Access Control)的修饰符,其作用是更好地控制类及其域、方法的存取权限,更好地实现信息的封装与隐藏,方法的访问控制符包括private, protected, public和“默认访问控制符”。
类中限定为private的成员(域或方法)只能被这个类本身访问,即私有访问控制。
类中的成员缺省访问控制符时,称为缺省访问控制。
缺省访问控制的成员可以被这个类本身和同一个包中的类所访问,即包访问控制。
类中限定为protected的成员可以被这个类本身,它的子类(包括同一个包中以及不同包中的子类)以及同一个包中所有其他的类访问。
类中限定为public的成员可以被所有的类访问。
Java中还有一种访问控制符为private proteced,它限定能被本类及其子类可以访问,而包中的其他非子类的类不能访问。
类的访问控制符或者为public,或者缺省。
(但内部类可以有private、protected 等访问控制符。
)如果类用public修饰,则该类可以被其他类所访问;若类缺省访问控制符,则该类只能被同包中的类访问。
2.改写本节例子UsePhoneCard成为图形界面的Applet程序,接受用户输入的卡号,密码,金额和接入号码,创建PhoneCard类的对象并输出这张电话卡的有关信息。
第五章习题:1.什么是多态,多态有哪些方式?答:多态性(Polymorphism来自希腊语,意思是多种形态)是指允许一个接口访问动作的通用类的性质。
一般地,多态性的概念常被解释为“一个接口,多种方法”。
这意味着可以为一组相关活动设计一个通用接口。
多态性允许用相同接口规定一个通用类来减轻问题的复杂度。
选择适当的动作(方法)适应不同环境的工作则留给编译器去做。
作为编程者,无需手工去做这些事情,只需利用通用接口即可。
多态的特点大大提高了程序的抽象程度和简洁性,更重要的是,它最大限度地降低了类和程序模块之间的耦合性,提高了类模块的封闭性,使得它们不需了解对方的具体细节,就可以很好地共同工作。
这个优点对于程序的设计、开发和维护都有很大的好处。
2. 什么是接口?3.根据下面的要求编程实现复数类ComplexNumber(1) 复数类ComplexNumber的属性m_dRealPart: 实部,代表复数的实数部分m_dImaginPart:虚部,代表复数的虚数部分(2)复数类ComplexNumber的方法ComplexNumber()构造函数,将实部,虚部都置为0ComplexNumber(double r, double I)构造函数,创建复数对象的同时完成复数的实部,虚部的初始化GetRealPart()获取实部GetImaginaryPart()获取虚部SetRealPart(double d)设置实部SetImaginaryPart(double d)设置虚部ComplexAdd(ComplexNumber c)复数相加ComplexAdd(double c)复数相加ComplexMinus(ComplexNumber c)复数相减ComplexMinus(double c)复数相减ComplexMulti(ComplexNumber c)复数相乘ComplexMulti(double c)复数相乘ToString()把当前复数对象的实部,虚部组合成a+bi的字符串形式第六章1.编写一个程序,要求能完成排序和查找,分别使用链表,数组和二叉树等数据结构,比较各种方法的优缺点。