当前位置:仁行文秘网>范文大全 > 公文范文 > Java面向对象程序设计案例教程,,习题答案,(王贺,),1-4章(全文)

Java面向对象程序设计案例教程,,习题答案,(王贺,),1-4章(全文)

时间:2022-06-28 09:10:05

下面是小编为大家整理的Java面向对象程序设计案例教程,,习题答案,(王贺,),1-4章(全文),供大家参考。

Java面向对象程序设计案例教程,,习题答案,(王贺,),1-4章(全文)

 

  习题解答 第 第 1 章 Java 程序语言概述

 一、选择题 1.D 2.B 3.C 4.B 5.

 A 6.

 B 7.C

 二、简答题 1. Java 语言具有以下一些特点:简单、面向对象、分布式、解释执行、鲁棒、安全、体系结构中立、可移植、高性能、多线程以及动态性。

 2. 一般来讲,要创建一个 Java 程序需要以下几个过程:

 第一步:

 编写 Java 源程序。由于 JDK 没有提供专门的编辑工具,所以可以通过任意文本编辑器进行编写 Java 源代码,例如记事本、notepad 等,程序编辑完成后保存文件,然后将文件的扩展名改为“.java”。

 第二步:编译源程序。在命令行窗口中首先找到编写的 Java 源程序的目录,然后通过javac 命令进行编译,将其编译成 Java 虚拟机能够识别的字节码文件,以“.class”作为文件扩展名。

 第三步:调试运行程序。生成字节码文件后,通过 java 命令对“.class”文件进行解释读取并翻译成计算机能执行的代码,执行完成后,查看执行结果。如果程序有编译错误或者逻辑错误,则需要通过提示来修改程序并纠正错误,然后重新进行编译、运行。

 3.

 Java SE(Java Platform,Standard Edition)。Java SE 以前称为 J2SE。它允许开发和 3 部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。

 Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web2.0应用程序。

 Java ME(Java Platform,Micro Edition)。这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。

 4. 1.JAVA_HOME :JDK 安装目录。

 作用:其他相关环境变量配置可以引用,更加方便简洁。

 2.Path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 作用:使系统可以找到并调用 java.exe 和 javac.exe。

 3.classpath:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

 作用:classpath 环境变量的作用--告诉 java 虚拟机所有的可执行文件.class 的位置。

 三、编程题 1.

 public class Test1_1 {

 public static void main(String[] args) {

  System.out.println("I love Java!");

 } }

 2.

 public class Test1_2 {

 public static void main(String[] args) {

  int r = 3;

  float pai = 3.14f;

  float s = pai*r*r;

  System.out.println("圆形的面积为:"+s);

 } }

 第 第 2 章 Java 程序设计语法基础

 一、选择题 1.D 2.D 3.D 4.C 5.

 B 6.

 C 7.D

 8.

 A 二、简答题 1.

 Java 的基本数据类型包括整型、浮点型、字符型、布尔型 2.

 float 型常量应当用 F 或 f 做后缀,例如 123.4F。

 double 型常量应当用 D 或 d 做后缀,例如 123.4d,允许省略后缀。

 3.

 见书 2.5.2 小节 三、编程题 1. import java.util.Scanner;

 public class Test2_1 {

 public static void main(String[] args) {

  Scanner input = new Scanner(System.in);

  System.out.println("请输入第一个数字:");

  int a = input.nextInt();

  System.out.println("请输入第二个数字:");

  int b = input.nextInt();

 System.out.println("请输入第三个数字:");

  int c = input.nextInt();

  int max;

  if(a>b) {

 max = a;

  }else {

 max = b;

  }

  if(max<c) {

 max = c;

  }

  System.out.println("最大的数是:"+max);

 }

 }

  2.

 public class Test2_2 {

 public static void main(String[] args) {

  int sum = 0;

  for(int i = 1;i <= 20;i++) {

 int n = 1;

 for(int j = 1;j <= i;j++) {

  n = n * j;

 }

 sum = sum + n;

  }

  System.out.println("1!+2!+3!+…+20!="+sum);

 } } 3. public class Test2_3 {

 public static void main(String[] args) {

  int i, j;

  for (i = 1; i <= 100; i++) {

 if (i == 1 || i == 2) {

  System.out.println(i);

  continue;

 }

 for (j = 2; j < i; j++) {

  if (i % j == 0)

 break;

  if (j == i - 1)

 System.out.println(i);

 }

 }

 } } 4. public class Test2_4 {

 public static void main(String[] args) {

  for (int i = 1; i <= 9; i++) {

 for (int j = 1; j <= i; j++) {

  System.out.print(j + "*" + i + "=" + i * j + "\t");// \t 跳到下一个TAB位置

 }

 System.out.println();

  }

 } } 5. public class Test2_5 {

 public static void main(String[] args) {

  int starLine = 7; // 改变starLine的大小输出不同的效果

  for (int i = 1; i <= starLine; i++) {

 for (int j = 1; j <= i; j++) {

  System.out.print("*");

 }

 System.out.println();

  }

 } } 第 第 3 章 数组与字符串

 一、选择题 1.C 2.D 3.A 4.D 5.

 D 6.

 C 7.D

 8.

 C 9.

 A 二、简答题 1. 见书 3.1.1 和 3.1.2。

 2. 见书 3.1.3

 3. 数组下标的类型是长整型。

 数组最小的下标是 0。

 表示数组名为 a 的第三个元素:假设数组为 abc() ,则第三个元素为 abc(2)。因为数组从 0开始,第三个就是 2。

 4. 使用数组时要注意下标不能超出范围,如果超出范围,在程序运行时,系统就会抛出数组下标越界异常。

 访问的时候注意下标,下标为从 0 开始。

 三、编程题 1.

 public class Test3_1 {

 public static void main(String[] args) {

  int arr[] = new int[] { 1,3,5,7,9,11,13,15,17,19 };

  for(int i = 0; i < arr.length / 2; i++){

  int temp = arr[i];

  arr[i] = arr[arr.length - i - 1];

  arr[arr.length - i - 1] = temp;

  }

  for (int i = 0; i < arr.length; i++) {

  //System.out.println(arr[i]); //每个一行

 System.out.print(" "+arr[i]); //全部一行

  }

 System.out.println();

 } }

  2.

 import java.util.Scanner;

 //提示用户输入学生个数,学生姓名和他们的成绩,然后按照学生成绩降序排列; public class Test {

 private String name;

 private double grade;

  public double getGrade() {

  return grade;

 }

  public void setGrade(double grade) {

  this.grade = grade;

 }

  public String getName() {

 return name;

 }

  public void setName(String name) {

  this.name = name;

 }

  public String toString() {

  return this.name;

 }

  public static void main(String[] args) {

  Scanner input = new Scanner(System.in);

  System.out.println("请输入学生个数");

  int stuNum = input.nextInt();

  Test objArr[] = new Test[stuNum];

  for (int i = 0; i < objArr.length; i++) {

 objArr[i] = new Test();

 System.out.println("请输入第" + (i + 1) + "个学生的姓名");

 String name = input.next();

 objArr[i].setName(name);

 System.out.println("请输入第" + (i + 1) + "个学生的成绩");

 long grade = input.nextLong();

 objArr[i].setGrade(grade);

  }

  System.out.println("打印开始");

  for (int i = 0; i < objArr.length; i++) {

 for (int j = i + 1; j < objArr.length; j++) {

  if (objArr[i].getGrade() < objArr[j].getGrade()) {

 Test s = new Test();

 s = objArr[i];

 objArr[i] = objArr[j];

 objArr[j] = s;

  }

 }

  }

  for (int i = 0; i < objArr.length; i++) {

 System.out.println(objArr[i].getName() + "的成绩是:" + objArr[i].getGrade());

  }

 }

 } 第 第 4 章 类和对象

 一、选择题 1.D 2.B 3.C 4.D 5.

 C 6.

 D 7.B 8.

 A 9.

 A 10.

 A 二、简答题 1.类是对象的抽象,对象是类的具体实例化。

 2. 定义一个类的步骤:

 1. 定义类使用关键字 class,然后定义类名。

 2. 编写类的属性,即声明变量。

 3. 编写类的方法。

 类的一般格式如下:

 class 类名{

 //定义属性部分(成员变量)

 属性 1 的类型 属性 1;

 属性 2 的类型 属性 2; …… 属性 m 的类型 属性 m; //定义方法部分 方法 1(); 方法 2(); …… 方法 n(); }

 3.

 详见 4.4.2 小节 三、编程题 1.

 public class People {

 String name;

 int age;

 char sex;

 double height;

  People(String n,int a,char s,double h){

 name = n;

  age = a;

  sex = s;

  height = h;

 }

 void talk() {

  System.out.println("你好");

 }

 int caculate(int a,int b) {

 return a+b;

  }

 public static void main(String[] args) {

  People s = new People("张三",18,"男",180.0);

  s.talk();

  System.out.println("计算结果是:"+s.caculate(23,45));

 } } 2.

 public class Point {

 private double x;

 private double y;

  public Point() {

 }

  public Point(double x, double y) {

  this.x = x;

  this.y = y;

 }

  public static double distance(Point p1, Point p2) {

  return Math.sqrt((Math.pow(p1.x - p2.x, 2) + Math.pow(p2.y - p1.y, 2)));

  }

  public static void main(String[] args) {

  Point p1 = new Point(1, 2);

  Point p2 = new Point(0, 0);

  System.out.println(Point.distance(p1, p2));

  }

 }

推荐访问:Java面向对象程序设计案例教程 习题答案 (王贺 ) 1-4章 习题 程序设计 面向对象

声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。

Copyright©2024 仁行文秘网版权所有 备案号:苏ICP备16062786号-1