尔雅JAVA程序设计_4课后答案(学习通2023题目答案)

尔雅JAVA程序设计_4课后答案(学习通2023题目答案)

第3讲 数据运算、尔雅流控制和数组

Week3 测试

1、程序数据类型决定数据的设计存储方式和运算方式

2、Java中的课后数据类型分为两大类

3、String属于引用类型

4、答案Java中引用类型在赋值时,学习复制的通题是对象实体。

5、目答Java中的尔雅char是一个字节。

6、程序Java中的设计long是4个字节。

7、课后3.14是答案float型。

8、学习0b0001是通题二进制写法。

9、534L表示长整数。

10、Java中没有无符号数。

11、Java中非零即真。

12、Java是大小写敏感的语言。

13、按惯例,类名首字母大写,变量名首字母小写。

14、字符串连接运算符其实是用append来实现的。

15、^表示乘方运算。

16、15/4的结果是3.75。

17、&表示短路与运算。

18、>>>表示无符号右移。

19、书写表达式要少用或不用括号。

20、javap –c命令可以反汇编代码。

21、程序的三种基本流程是顺序、分支、循环。

22、Java中可以在任一表达式后面加分号构成表达式语句。

23、case后面可以跟变量。

24、循环语句有三种写法。

25、循环一般有五个要素。

26、do.while循环至少执行一次。

27、break及continue后面可以跟一个语句标号。

28、增强的for语句可以方便地遍历数组。

29、数组都有一个属性length。

30、main()的写法是public void main(int argc, String[]argv)

31、声明数组时可以直接指定数组的大小。

32、数组都是引用类型。

33、数组元素都会隐式初始化。

week3互评作业

1、用“埃氏筛法”求2~100以内的素数。2~100以内的数,先去掉2的倍数,再去掉3的倍数,再去掉5的倍数,……依此类推,最后剩下的就是素数。 要求使用数组和循环,最好使用一下增强的for语句。 提示:可以使用一个boolean类型的数组,所以“将某个数i去掉”,可以表示成a[i]=false。当然也可以使用其他方法。 请注意代码风格:类名、变量名的命名,以及必要注释等等; 请上传压缩后的源代码文件(为防上传失败,请同时把代码贴到文本框中)。 评分标准: 使用了数组和循环(4分); 使用增强的for语句(1分); 筛法求素数的功能正确(5分)。

第1讲 Java语言与面向对象的程序设计

Week1 测试

1、Java的三大平台不包括
A、JavaSE
B、JavaEE
C、JavaME
D、Android

2、Java出现于哪年
A、1990
B、1995
C、2000
D、2005

3、Java的开发工具是
A、JavaAPI
B、JDK
C、JRE
D、JVM

4、面向对象语言的特点包括:
A、封装
B、继承
C、多态
D、难维护

5、Java相关的网站包括
A、java.sun.com
B、https://www.oracle.com/technetwork/java/index.html
C、java.com
D、jcp.org

6、Java的运行环境叫JRE

7、JDK包括JRE及开发工具

8、JRE包括JVM及API

9、Java是跨平台的语言

10、Java是一种面向对象的语言

11、Java不直接使用指针

12、Java的垃圾回收要由程序员自己来进行

13、Java有丰富的库供我们调用

14、java程序编译的结果(class文件)中包含的是实际机器的CPU指令

第2讲 简单的Java程序

Week2 测试

1、main()的写法是public void main(String[]arg)

2、public类名与文件同名

3、package名与路径同名

4、import表示导入

5、编译程序的基本命令是javac

6、运行程序时java后面跟的是文件名

7、path表示前者是命令(javac及java)的路径

8、path是所要引用的类的路径

9、在javac及java命令行上使用-classpath (或-cp)选项可以引用别的库

10、可以使用jar来打包程序

11、jar文件中的清单信息文件中Main-Class表示主类

12、可以使用javadoc来生成文档

13、Javap 查看类信息及反汇编

14、jar打包常用的参数是cvfm

15、运行jar时,使用 java -jar 文件名.jar

16、文档注释是用/** */

17、@param表示对方法的说明 对方法中某参数的说明

18、使用Scanner的next()方法可以得到一个实数

19、用Integer.parseInt( s )可以用来解析一个整数

20、用Double.parseDouble(s) 可以用来解析一个实数

21、add(xxxx) 可以将按钮等对象加入到Frame中

22、btn.addActionListener可以用来处理事件

23、处理事件的真正函数是actionPerformed()函数

week2互评作业

1、编写一个应用程序,验证以下等式是成立的: 提示:if分支语句、for循环语句的写法与C、C++是相似的。 如果能完成上面的验证,则达到基本要求(可得到基本分数8分)。 较高要求,可根据实际情况选做(可得到附加的2分):找到更多的这样的整数:一些相续正整数的立方和正好等于另一个整数的立方。 提交时,可将java程序或项目压缩后上传附件。如果有什么特殊之处(如算法比较复杂)可以在写一个说明性的文件一起放到压缩文件中。

第4讲 类、包和接口

Week4 测试

1、类(class)是组成Java程序的基本要素。

2、类将变量与函数封装到一个类中。

3、方法(method)是类的功能,是用函数来表示的。

4、构造方法(constructor )与类名同名。

5、如果没有定义任何构造方法,系统会自动产生一个构造方法。

6、new表示新建并初始化一个对象。

7、方法重载(overloading)是指多个方法有相同的名字。

8、方法重载是多态(polymorphism)的一种方式。

9、一个类只能有一个直接父类。

10、继承可以实现代码重用,提高开发效率和可维护性。

11、Java中的继承是通过extends关键字来实现的。

12、如果没有extends子句,则该类默认为java.lang.Object的子类。

13、所有的类都是通过直接或间接地继承java.lang.Object得到的。

14、继承关系在UML图中,是用一个箭头来表示子类与父类的关系的。

15、父类的非私有方法可以被子类自动继承。

16、子类也可以重新定义与父类同名的方法,实现对父类方法的覆盖(Override)。

17、使用super访问父类的域和方法。

18、在覆盖父类的方法的同时,使用super可以利用已定义好的父类的方法。

19、子类在构造方法中,可以用super来调用父类的构造方法。

20、在构造方法中,使用super()时,必须放在第一句。

21、子类对象可以被视为其父类的一个对象。

22、如果一个方法的形式参数定义的是父类对象,那么调用这个方法时,可以使用子类对象作为实际参数。

23、包及子包的定义,实际上是为了解决名字空间、名字冲突。

24、同一包中的各个类,默认情况下可互相访问。

25、Java编译器自动导入包java.lang.*。

26、类的访问控制符或者为public,或者默认。

27、将字段用private修饰,从而更好地将信息进行封装和隐藏。

28、使用setter及getter是一种好的编程习惯。

29、static表示静态的、非实例的、类的。

30、static变量可以表示全局变量。

31、如果一个类被abstract所修饰,说明这个类不能被实例化。

32、final所修饰的方法,是不能被子类所覆盖的方法。

33、final所修饰的变量,是只读量。

34、一个字段被static final两个修饰符所限定时,它可以表示常量。

35、在定义final局部变量时,也必须且只能赋值一次。

36、抽象方法在子类中必须被实现,否则子类仍然是abstract的。

37、一旦某个类中包含了abstract方法,则这个类必须声明为abstract类。

38、在类的声明中用implements子句来表示一个类使用某个接口。

39、接口类型是引用类型。

40、在接口中定义的常量具有public, static, final的属性。

41、一个文件中最多只能有一个package语句。

42、在接口中定义的方法具有public, abstract的特点(Java8以前)。

43、Java8中,在接口中可以有static的方法,也可以有方法体的方法。

44、enum表示枚举。

45、一个类只能实现一个接口。

46、abstract类必须包含abstract方法。

47、接口不能有父接口。

48、java中的enum是整数。

49、final abstract可以同时修饰一个方法。

50、一个文件中最多只能有一个class定义。

51、构造方法是可以继承的。

52、this和super是两个不同的对象。

53、子类不能Overload与父类同名的方法。

54、字段(field)是类的属性,是用函数来表示的。

55、构造方法(constructor )的返回类型是void。

56、作何一个类,系统都会自动产生一个不带参数的构造方法。

57、方法签名(signature)包括参数的类型及参数的名字。

58、private可以修饰类的成员(字段、方法)。

59、protected修饰的成员,不能在包中访问,只能在子类中访问。

60、如果省略访问控制符,则表示private。

61、static函数中可以使用this。

62、static函数可以直接使用类名来访问,不能用对象实例来访问。

63、import static可以导入任何一个类。

64、如果一个类被final所修饰,说明这个类不能被实例化。

65、如果一个类被abstract所修饰,说明这个类没有构造方法。

Week4 互评作业

1、编写一个小的程序,其中定义一些接口、类、抽象类,定义它们的成员(字段及方法), 要求使用使用setter/getter, static, final, abstract,@Override等语法要素,并写一个main函数来使用它们。这些类、接口可以是围绕以下选题之一 飞翔世界:来一次飞翔接力(即多个可飞翔的对象依次调用); 动物世界:来一次吃西瓜大赛; 图书馆:模拟一天的借阅过程; 学校:模拟选课过程; 等等 要求写个简要说明。

第5讲 深入理解Java语言

Week5 测试

1、局部变量是方法中定义的变量或方法的参变量。

2、局部变量存在于栈中。

3、当方法调用结束,方法中的局部变量就结束其生命了。

4、字段变量可以自动赋初值。

5、main函数也可以写为public static void main( String…argv){ }。

6、不定长参数实际上可以理解为数组。

7、javap –c 命令可以反汇编Java类中的指令。

8、多态是指一个程序中相同的名字表示不同的含义的情况。

9、overload是多态的一种。

10、override及虚方法调用是多态的一种。

11、虚方法调用是由对象实例的类型来动态决定的。

12、虚方法调用可以理解为方法的动态绑定。

13、static,private,final方法不是虚方法。

14、static方法调用是由所声明的变量类型所决定,与实例无关。

15、在构造方法中,如果没有this及super,则编译器自动加上super()。

16、在构造方法在执行时,令所有父类的构造方法都得到调用。

17、在构造方法在执行时,一定会调用Object的构造方法。

18、创建对象时,可以用{ { }}这样的语法来对字段进行赋值。

19、实例初始化,先于构造方法{ }中的语句执行。

20、静态初始化,在第一次使用这个类时要执行。

21、Java中自动进行垃圾回收。

22、系统在回收时会自动调用对象的finalize() 方法。

23、由于finalize()方法的调用时机并不确定,所以一般不用finalize()。

24、try-with-resources语句可以自动执行close()方法。

25、内部类中访问外部类的字段可以用“外部类名.this.字段”的方式。

26、局部类及匿名类可以访问final局部变量。

27、匿名类不取名字,直接用其父类或接口的名字。

28、匿名类在定义时就创建了一个实例。

29、在用new创建内部类实例时,要在 new前面冠以对象变量。

30、匿名类使用父类的构造方法。

31、用到界面的事件处理中可以使用匿名类。

32、匿名类经常用于做方法的参数。

33、多态是在编译时就能确定的。

34、字段是方法中定义的变量或方法的参变量。

35、局部变量可以自动赋初值。

36、对于引用型变量,传递的值复制对象实体。

37、静态初始化,在每次创建对象实例时都会执行一次。

38、实例初始化,先于静态初始化执行。

39、抽象类不能有构造方法。

40、编译器会为所有的类加一个default构造方法,即使用户已定义了构造方法。

41、虚方法调用是指编译时就决定了调用哪个类中的哪个方法。

42、Java中的方法默认不是虚方法,需要用特殊的关键字才能表明是虚方法。

43、Java中使用delete来清除创建的对象。

44、System.gc()方法强制立即执行垃圾回收。

45、内部类中不能访问外部类的private字段及方法。

46、匿名类可以定义构造方法。

Week5 互评作业

1、附件是一个模拟事件消息订阅的程序,请阅读并修改。 主要是加上一个自已的订阅者,并且该订阅者要用匿名类来实现。(基本要求占8分) 如果可以,也加上用Lambda来实现的订阅者。(较高要求,占2分)。

学习通JAVA程序设计_4

Java程序设计是大学计算机专业重要的一门课程,它涉及到了计算机程序设计的基础知识,包括语言的基本语法、面向对象的编程思想以及常用的开发工具和框架等。而Java程序设计_4则是Java程序设计系列课程中的第四个课程,主要讲解Java中常用的面向对象的编程技巧和设计模式,是学习Java编程的必修课程之一。

一、课程内容概述

Java程序设计_4主要包括以下内容:

  • Java面向对象的编程思想
  • Java中常用的设计模式
  • Java的异常处理机制
  • Java中的IO操作

通过这些内容的学习,学生将能够掌握Java中常用的编程技巧和思想,能够熟练运用Java进行程序开发,提高自己的编程水平和能力。

二、课程学习目标

Java程序设计_4的学习目标主要包括以下几个方面:

  • 理解Java面向对象的编程思想,能够熟练运用封装、继承、多态等面向对象的编程技巧。
  • 掌握Java中常用的设计模式,能够灵活运用单例模式、工厂模式、观察者模式等常用的设计模式。
  • 掌握Java中的异常处理机制,能够编写具有健壮性的程序。
  • 掌握Java中的IO操作,能够进行文件读写等操作。

三、课程学习方法

Java程序设计_4的学习方法主要包括以下几个方面:

  • 认真听课,理解老师讲解的内容。
  • 认真完成课后作业,理解掌握课程重点知识点。
  • 多编写Java程序,熟练掌握Java编程技巧。
  • 多阅读Java相关的书籍和文献,了解Java编程的最新动态和技术。

通过以上学习方法的实践,学生将能够顺利完成本课程的学习,并且掌握Java中常用的编程技巧和思想。同时,学生还需要不断地进行实践和探索,提高自己的编程水平和能力。

四、总结

Java程序设计_4是一门重要的Java编程课程,通过学习本课程,学生将能够掌握Java中常用的面向对象的编程技巧和设计模式,掌握Java中的异常处理机制和IO操作。在学习过程中,学生需要认真听课,完成课后作业,多编写Java程序,多阅读Java相关的书籍和文献,不断提高自己的编程水平和能力。