当前位置:首页 >> 理学 >>

JAVA第三章习题答案


1.什么是类?什么是面向对象的程序设计方法? 答:类是对象的抽象,它是用来描述一组具有相同特征的对象。 面向对象(Object Oriented,OO)的基本思想是按照人类习惯的思维方式,将客观世界的实 体抽象为对象, 每个对象封装了数据及对数据的操作, 由既相互协作又彼此独立的对象集合来开 发软件。 2.什么是对象?基本数据类型与对象有何不同? 答:对象:数据及对数据的操作行为放在一起,作为一个相互依存,不可分割的整体。 基本数据类型是基本类型,只存储数据;对象是引用类型,不仅包含数据,还包含对数据的 操作。 3.修饰类的访问控制符有哪些?修饰类中成员的访问控制符有哪些? 答:修饰类的访问控制符有: publlic 和默认(无修饰符)两种。 修饰类中成员的访问控制符有:public、protected、private 和默认(无修饰符)四种。 4.构造方法有哪些特点? 答: (1) 构造方法的名字与类名相同。 (2) 构造方法没有返回值类型,包括没有 void。 (3) 构造方法通常要说明为 public 类型,即公有的。 (4) 构造方法只能通过 new 运算符调用,用于创建对象实例时对成员数据进行初始化。 (5) 构造方法可以没有参数,也可以有多个参数。 (6) 构造方法可以重载。 (7) 每个类至少有一个构造方法,如果没有为类定义构造方法,系统会自动为该类生成一 个默认的构造方法。 5.构造方法重载的作用是什么? 答: 在进行对象实例化时可能会遇到许多不同情况, 于是要求针对所给定的不同的参数调用 不同的构造方法。这时,可以通过在一个类中同时定义若干个构造方法,即对构造方法进行重载 来实现。 6.Java 中的包和 Windows 的文件夹有什么关系? 答:在本质上,Java 中的包和 Windows 的文件夹是相同的。在表达方式上 Java 中的包采用 点分方法,用“.”来指明目录的层级;Windows 的文件夹采用“\” 来指明目录的层级。 7.说明类(静态)成员的特点。 答: (1)类成员是被该类所有对象共享的。 (2)不需要实例化对象就可以使用。 8.设计并实现一个 Course 类,它代表学校中的一门课程。按照实际情况,将这门课程的相 关信息组织成它的属性,并定义必要的相应方法。 public class Course { private String cno; private String cname; private double credit; private int period; public Course(){ } public Course(String cno,String cname,double credit,int period){ //课程编号 //课程名称 //学分 //学时

this.cno=cno; this.cname=cname; this.credit=credit; this.period=period; } public void setCno(String cno){ this.cno=cno; } public String getCno(){ return cno; } public void setCname(String cname){ this.cname=cname; } public String getCname(){ return cname; } public void setCredit(double credit){ this.credit=credit; } public double getCredit(){ return credit; } public void setPeriod(int period){ this.period=period; } public int getPeriod(){ return period; } public String toString(){ return cno+"\t"+cname+"\t"+credit+"\t"+period; } } 9.设计并实现一个 Box 类。要求:定义 3 个实例变量分别表示 Box 的长、宽和高,并定义 必要的方法。创建一个对象,求给定尺寸的立方体的表面积和体积。 //Box.java public class Box { private double length; private double width; private double height;

public Box(){ } public Box(double l,double w,double h){ length=l; width=w; height=h; } public void getLength(double l){ length=l; } public double getLength(){ return length; } public void getWidth(double w){ width=w; } public double getWidth(){ return width; } public void getHeight(double h){ height=h; } public double getHeight(){ return height; } public double getArea(){ return 2*(length*width+length*height+width*height); } public double getVolume(){ return length*width*height; } }

//BoxTest.java public class BoxTest { public static void main(String args[]){ Box box=new Box(3,4,5); System.out.println("表面积:"+box.getArea()); System.out.println("体积:"+box.getVolume()); } }

10.学生类的创建和使用。 (1)创建一个 Student 类,包括的私有数据成员有学号、姓名、性别、年龄等。 (2)声明一个构造方法,以初始化对象的所有数据成员。 (3)声明分别获得各数据成员(学号、姓名、性别、年龄等)的各个 public 方法。 (4)声明分别修改各数据成员(学号、姓名、性别、年龄等)的各个 public 方法。 (5 ) 声明一个 public 型的 toString( )方法, 把该类中的所有数据成员信息组合成一个字符串。 (6 ) 在类中声明统计班级总人数的私有数据成员 count, 以及获得班级总人数的 public 方法。 (7)将 Student 类放在子包 student 中。 (8 ) 在子包 student 外, 创建测试类 StudentTest。 在测试类中, 使用 Student 类创建多个对象, 测试 Student 类的每个 public 方法。 //Student.java package student; public class Student { private String sno; private String sname; private char ssex; private int sage; private static int count=0; public Student(String no,String name,char sex,int age){ sno=no; sname=name; ssex=sex; sage=age; count++; } public void setSno(String no){ sno=no; } public String getSno(){ return sno; } public void setSname(String name){ sname=name; } public String getSname(){ return sname; } public void setSsex(char sex){ ssex=sex; } public char getSsex(){ return ssex;

} public void setSage(int age){ sage=age; } public int getSage(){ return sage; } public String toString(){ return "学号:"+sno+";姓名:"+sname+";性别:"+ssex+";年龄:"+sage+"。"; } public static int getCount(){ return count; } }

//StudentTest import student.Student; public class StudentTest { public static void main(String args[]){ System.out.println("现在共有"+Student.getCount()+"个学生。"); Student stu1=new Student("1001"," 张三",'男',20); System.out.println(stu1.toString()); System.out.println("现在共有"+stu1.getCount()+"个学生。"); Student stu2=new Student("1002"," 李四",'女',19); System.out.println(stu2.toString()); System.out.println("现在共有"+Student.getCount()+"个学生。"); stu2.setSage(21); System.out.println(stu2.toString()); System.out.println(stu1.getSno()); System.out.println(stu1.getSname()); System.out.println(stu1.getSsex()); System.out.println(stu1.getSage()); } }


相关文章:
java基础教程第3版习题解答
java基础教程第3版习题解答_工学_高等教育_教育专区。Java 基础教程第 3 版习题...=cStart;c<=cEnd;c++) System.out.print(" "+c); } } 第三章习题 1....
java课后习题答案
JAVA第三章课后习题答案 8页 免费 java经典课后习题答案 3页 1下载券 JAVA编程...8—5 96,乘数超过 99 习题 9 9—1 A: 正确,java 把 string 类设置为 ...
《Java基础入门》_课后习题答案
Java 基础入门》课后习题答案第1章 Java 开发入门一、填空题 1、 Java EE...B 三、简答题 1、 面向对象、跨平台性、健壮性、安全性、可移植性、多线程...
java第三章课后习题解答
第3 章 面向对象程序设计基础【1】什么是 Java 程序使用的类?什么是类库? [解答]:Java 程序的基本单位是类。对象是对事物的抽象,而类是对对象的抽象和归纳,...
java课后题答案
java课后题答案_工学_高等教育_教育专区。第 1 章 Java 概述 1. 编译 java application 源程序文件将产生相应的字节码文件,这些字节码文件 别的扩展名为.java ...
解析JAVA程序设计第三章课后答案
解析JAVA程序设计第三章课后答案_工学_高等教育_教育专区。解析JAVA程序设计第三章课后答案第3 章习题解答 1.如何定义方法?在面向对象程序设计中方法有什么作用? ...
《Java基础入门》_课后习题
Java 基础入门》课后习题第1章 Java 开发入门一...D.d:\jre; 三、问答题 1、简述 Java 的特点。...[3]; D、 以上答案皆不对 10、请先阅读下面的...
Java语言程序设计课后习题解答 张思民 第三章
Java语言程序设计课后习题解答 张思民 第三章_工学_高等教育_教育专区。Java语言程序设计课后习题解答 张思民 习题解答3第3 章 面向对象程序设计基础【1】什么是 J...
《Java基础入门》_课后习题答案
Java 基础入门》课后习题答案第1章 Java 开发入门一、填空题 1、 Java EE...B 三、简答题 1、 面向对象、跨平台性、健壮性、安全性、可移植性、多线程...
AnjoyoJava03课后习题
7. 8. 9. 与 C++语言不同,Java 语言不通过___语句实现跳转。 每一个 else...数值分析课后习题答案 暂无评价 14页 2下载券 C++第三章课后习题答案-... ...
更多相关标签: