文档库 最新最全的文档下载
当前位置:文档库 › java程序设计(辛运帏第二版)课后习题答案

java程序设计(辛运帏第二版)课后习题答案

java程序设计(辛运帏第二版)课后习题答案
java程序设计(辛运帏第二版)课后习题答案

//习题2.2

import java.util.*;

class MyDate{

private int year;

private int month;

private int day;

public MyDate(int y,int m,int d){//构造函数,构造方法

year=y;

month=m;

day=d;

}//end public MyDate(int y,int m,int d)

public int getYear(){//返回年

return year;

}//end getYear()

public int getMonth(){//返回月

return month;

}//end getMonth()

public int getDay(){//返回日

return day;

}//end getDay()

}//end class MyDate

class Employee{

private String name;

private double salary;

private MyDate hireDay;

public Employee(String n,double s,MyDate d){

name=n;

salary=s;

hireDay=d;

}//end public Employee(String n,double s,MyDate d)

public void print(){

System.out.println("名字:"+name+"\n工资:"+salary+"\n雇佣年份:"+hireYear()+"\n");

}//end print()

public void raiseSalary(double byPercent){

salary*=1+byPercent/100;

}//end

public int hireYear(){

return hireDay.getYear();

}

}//end class Employee

public class MyTestClass {

public static void main(String[] args) {

Employee[]staff=new Employee[3];

staff[0]=new Employee("Harry Hacker",35000,new MyDate(1989,10,1));

staff[1]=new Employee("Carl Carcker",75000,new MyDate(1987,12,15));

staff[2]=new Employee("Tony Tester",38000,new MyDate(1990,3,12));

int integerValue;

System.out.println("The information of employee are:");

for(integerValue=0;integerValue<=2;integerValue++){

staff[integerValue].raiseSalary(5);

}//end for()

for(integerValue=0;integerValue<=2;integerValue++){

staff[integerValue].print();

}//end for()

}//end main()

}//end class MyTestClass

//习题2.4

import java.util.*;

public class DataType {

public static void main(String[] args) {

boolean flag;

char yesChar;

byte finByte;

int intValue;

long longValue;

short shortValue;

float floatValue;

double doubleValue;

flag=true;

yesChar='y';

finByte=30;

intValue=-7000;

longValue=200l;

shortValue=20000;

floatValue=9.997E-5f;

doubleValue=floatV alue*floatValue;

System.out.println("the values are:");

System.out.println("布尔类型变量flag="+flag);

System.out.println("字符型变量yesChar="+yesChar);

System.out.println("字节型变量finByte="+finByte);

System.out.println("整型变量intValue="+intValue);

System.out.println("长整型变量longValue="+longValue);

System.out.println("短整型变量shortValue="+shortValue);

System.out.println("浮点型变量floatValue="+floatValue);

System.out.println("双精度浮点型变量doubleValue="+doubleValue); }//end main()

}

//习题2.9

import java.util.*;

class PubTest1{

private int ivar1;

private float fvar1,fvar2;

public PubTest1(){

fvar2=0.0f;

}

public float sum_f_I(){

fvar2=fvar1+ivar1;

return fvar2;

}

public void print(){

System.out.println("fvar2="+fvar2);

}

public void setIvar1(int ivalue){

ivar1=ivalue;

}

public void setFvar1(float ivalue){

fvar1=ivalue;

}

}

public class PubMainTest {

public static void main(String[] args) {

PubTest1 pubt1=new PubTest1();

pubt1.setIvar1(10);

pubt1.setFvar1(100.02f);

pubt1.sum_f_I();

pubt1.print();

}

}

//习题2.10

import java.util.*;

class Date {

private int year;

private int month;

private int day;

public Date(int day, int month, int year) { //构造函数,构造方法

this.year = year;

this.month = month;

this.day = day;

} //end public MyDate(int y,int m,int d) public int getYear() { //返回年

return year;

} //end getYear()

public int getMonth() { //返回月

return month;

} //end getMonth()

public int getDay() { //返回日

return day;

} //end getDay()

} //end class Date

public class Teacher {

String name;//教师名字

boolean sex;//性别,true表示男性

Date birth;//出生日期

String salaryID;//工资号

String depart;//教师所在系所

String posit;//教师职称

String getName() {

return name;

}

void setName(String name) {

https://www.wendangku.net/doc/ba15443813.html, = name;

}

boolean getSex() {

return sex;

}

void setSex(boolean sex) {

this.sex = sex;

}

Date getBirth() {

return birth;

}

void setBirth(Date birth) {

this.birth = birth;

}

String getSalaryID() {

return salaryID;

}

void setSalaryID(String salaryID) {

this.salaryID = salaryID;

}

String getDepart() {

return depart;

}

void setDepart(String depart) {

this.depart = depart;

}

String getPosit() {

return posit;

}

void setPosit(String posit) {

this.posit = posit;

}

public Teacher(){

System.out.println("父类无参数的构造方法!!!!!!!"); }//如果这里不加上这个无参数的构造方法将会出错!!!!public Teacher(String name,boolean sex,Date birth,

String salaryid,String depart,String posit){ https://www.wendangku.net/doc/ba15443813.html,=name;

this.sex=sex;

this.birth=birth;

this.salaryID=salaryid;

this.depart=depart;

this.posit=posit;

}//end Teacher()

public void print(){

System.out.print("the teacher'name:");

System.out.println(this.getName());

System.out.print("the teacher'sex:");

if(this.getSex()==false){

System.out.println("女");

}

else{

System.out.println("男");

}

System.out.print("the teacher'birth:");

System.out.println(this.getBirth().getYear()+"-"+

this.getBirth().getMonth()+"-"+

this.getBirth().getDay()); System.out.print("the teacher'salaryid:");

System.out.println(this.getSalaryID());

System.out.print("the teacher'posit:");

System.out.println(this.getPosit());

System.out.print("the teacher'depart:");

System.out.println(this.getDepart());

}//end print()

public static void main(String[] args) {

Date dt1=new Date(11,23,1989);

Date dt2=new Date(2,6,1975);

Date dt3=new Date(11,8,1964);

Date dt4=new Date(10,4,1975);

Date dt5=new Date(8,9,1969);

//创建各系教师实例,用来测试

Teacher t1=new Teacher("王莹",false,dt1,"123","经济学","prefessor");

ResearchTeacher rt=new ResearchTeacher("杨zi青",true,dt2,"421","软件工程",

"associate prefessor","software");

LabTeacher lat=new LabTeacher("王夏瑾",false,dt3,"163","外语",

"pinstrucor","speech lab");

LibTeacher lit=new LibTeacher("马二孩",true,dt4,"521","大学物理",

"prefessor","physicalLib");

AdminTeacher at=new AdminTeacher("王xi",false,dt5,"663","环境",

"prefessor","dean");

/////////分别调用各自的输出方法,输出相应信息////////////////////////////

System.out.println("-------------------------------");

t1.print();//普通教师信息

System.out.println("-------------------------------");

rt.print();//研究系列教师信息

System.out.println("-------------------------------");

lat.print();//普通教师信息

System.out.println("-------------------------------");

lit.print();//实验系列教师信息

System.out.println("-------------------------------");

at.print();//行政系列教师信息

System.out.println("-------------------------------");

}//end main()

}//end public class Teacher

class ResearchTeacher extends Teacher{

private String resField;

public ResearchTeacher(String name, boolean sex, Date birth, String salaryid,

String depart, String posit, String resField) { https://www.wendangku.net/doc/ba15443813.html, = name;

this.sex = sex;

this.birth = birth;

this.salaryID = salaryid;

this.depart = depart;

this.posit = posit;

this.resField = resField;

} //end public ResearchTeacher(){}

String getResField(){

return resField;

}

void setResField(String resField){

this.resField=resField;

}

public void print() {

System.out.print("research teacher info is:");

System.out.print("the teacher'name:");

System.out.println(this.getName());

System.out.print("the teacher'sex:");

if (this.getSex() == false) {

System.out.println("女");

}

else {

System.out.println("男");

}

System.out.print("the teacher'birth:");

System.out.println(this.getBirth().getYear() + "-" +

this.getBirth().getMonth() + "-" +

this.getBirth().getDay());

System.out.print("the teacher'salaryid:");

System.out.println(this.getSalaryID());

System.out.print("the teacher'posit:");

System.out.println(this.getPosit());

System.out.print("the teacher'depart:");

System.out.println(this.getDepart());

System.out.print("the teacher'resField:");

System.out.println(this.getResField());

} //end print()

}//end class ResearchTeacher

class LabTeacher extends Teacher{

private String labName;

public LabTeacher(String name, boolean sex, Date birth,

String salaryid, String depart,

String posit, String labName) { https://www.wendangku.net/doc/ba15443813.html, = name;

this.sex = sex;

this.birth = birth;

this.salaryID = salaryid;

this.depart = depart;

this.posit = posit;

https://www.wendangku.net/doc/ba15443813.html,bName = labName;

} //end public ResearchTeacher(){}

String getLabName(){

return labName;

}

void setLabName(String labName){

https://www.wendangku.net/doc/ba15443813.html,bName=labName;

}

public void print() {

System.out.print("lab teacher info is:");

System.out.print("the teacher'name:");

System.out.println(this.getName());

System.out.print("the teacher'sex:");

if (this.getSex() == false) {

System.out.println("女");

}

else {

System.out.println("男");

}

System.out.print("the teacher'birth:");

System.out.println(this.getBirth().getYear() + "-" +

this.getBirth().getMonth() + "-" +

this.getBirth().getDay());

System.out.print("the teacher'salaryid:");

System.out.println(this.getSalaryID());

System.out.print("the teacher'posit:");

System.out.println(this.getPosit());

System.out.print("the teacher'depart:");

System.out.println(this.getDepart());

System.out.print("the teacher'labName:");

System.out.println(https://www.wendangku.net/doc/ba15443813.html,bName);

} //end print()

}//end class LabTeacher

class LibTeacher extends Teacher{

private String libName;

public LibTeacher(String name,boolean sex,Date birth,

String salaryid,String depart,

String posit,String libName){ https://www.wendangku.net/doc/ba15443813.html, = name;

this.sex = sex;

this.birth = birth;

this.salaryID = salaryid;

this.depart = depart;

this.posit = posit;

this.libName=libName;

}//end public ResearchTeacher(){}

String getLibName(){

return libName;

}

void setLibName(String libName){

this.libName=libName;

}

public void print() {

System.out.print("lib teacher info is:");

System.out.print("the teacher'name:");

System.out.println(this.getName());

System.out.print("the teacher'sex:");

if (this.getSex() == false) {

System.out.println("女");

}

else {

System.out.println("男");

}

System.out.print("the teacher'birth:");

System.out.println(this.getBirth().getYear() + "-" +

this.getBirth().getMonth() + "-" +

this.getBirth().getDay());

System.out.print("the teacher'salaryid:");

System.out.println(this.getSalaryID());

System.out.print("the teacher'posit:");

System.out.println(this.getPosit());

System.out.print("the teacher'depart:");

System.out.println(this.getDepart());

System.out.print("the teacher'libName:");

System.out.println(this.libName);

} //end print()

}//end class LibTeacher

class AdminTeacher extends Teacher{

private String managePos;

public AdminTeacher(String name,boolean sex,Date birth,

String salaryid,String depart,

String posit,String managePos){ https://www.wendangku.net/doc/ba15443813.html, = name;

this.sex = sex;

this.birth = birth;

this.salaryID = salaryid;

this.depart = depart;

this.posit = posit;

this.managePos=managePos;

}//end public ResearchTeacher(){}

String getManagePos(){

return managePos;

}

void setManagePos(String managePos){

this.managePos=managePos;

}

public void print() {

System.out.print("adminteacher info is:");

System.out.print("the teacher'name:");

System.out.println(this.getName());

System.out.print("the teacher'sex:");

if (this.getSex() == false) {

System.out.println("女");

}

else {

System.out.println("男");

}

System.out.print("the teacher'birth:");

System.out.println(this.getBirth().getYear() + "-" +

this.getBirth().getMonth() + "-" +

this.getBirth().getDay());

System.out.print("the teacher'salaryid:");

System.out.println(this.getSalaryID());

System.out.print("the teacher'posit:");

System.out.println(this.getPosit());

System.out.print("the teacher'depart:");

System.out.println(this.getDepart());

System.out.print("the teacher'managePos:");

System.out.println(this.managePos);

} //end print()

}//end class AdminTeacher

习题2.11

public class Course {

private String courseID;

private String courseName;

private String courseType;

private int classHour;

private float credit;

public Course(String courseID, String courseName, String courseType,

int classHour, float credit) {

this.courseID=courseID;

this.courseName=courseName;

this.courseType=courseType;

this.classHour=classHour;

this.credit=credit;

}//end public Course(){}

String getID() {

return courseID;

}

void setID(String id) {

this.courseID = id;

}

String getName() {

return courseName;

}

void setName(String name) {

this.courseName = name;

}

String getType() {

return courseType;

}

void setType(String type) {

this.courseType = type;

}

int getClassHour() {

return classHour;

}

void setClassHour(int hour) {

this.classHour = hour;

}

float getCredit() {

return classHour;

}

void setCredit(float credit) {

this.credit= credit;

}

public void print(){

System.out.println("the basic info of this course as followed:");

System.out.println("courseID="+this.getID());

System.out.println("courseName="+this.getName());

System.out.println("courseType="+this.getType());

System.out.println("classHour="+this.getClassHour());

System.out.println("credit="+this.getCredit());

}

public static void main(String[] args) {

Course cs=new Course("d12","java程序设计(第二版)","cs",64,3.0f);

System.out.println("----------------------------------");

cs.print();

System.out.println("修改课程学分为4.0f");

cs.setCredit(4);

cs.print();

}

}

//习题2.12

public class MyGraphic {

String lineColor;

String fillColor;

MyGraphic(String lc,String fc){

this.lineColor=lc;

this.fillColor=fc;

}

void print(){

System.out.println("line color is "+this.lineColor+

"\t fill color is "+this.fillColor);

}

public static void main(String[] args) {

float rd=(float)4.5;

MyCircle mc=new MyCircle(rd,"black","white");

MyRectangle mr=new MyRectangle(4,6,"red","blue");

System.out.println("Circle info ");

mc.print();

System.out.println("circumference is " + mc.calCircum());

System.out.println("square is " + mc.calSquare());

System.out.println("rectangle info: ");

mr.print();

System.out.println("circumference is " + mr.calCircum());

System.out.println("square is " + mr.calSquare());

}//end main(){}

}//end public class MyGraphic

class MyRectangle extends MyGraphic{

float rLong;

float rWidth;

MyRectangle (float rl,float rw,String lc,String fc){

super(lc,fc);

this.rLong=rl;

this.rWidth=rw;

}//end MyRectangle (){}

float calCircum(){

return ((float)((this.rLong+this.rWidth)*2));

}

float calSquare(){

return ((float)(this.rLong*this.rWidth));

}

}//end class MyRectangle

class MyCircle extends MyGraphic{

float radius;

MyCircle (float rd,String lc,String fc){

super(lc,fc);

this.radius=rd;

}//end MyRectangle (){}

float calCircum(){

return (float)((this.radius*3.12*2));

}

float calSquare(){

return ((float)(this.radius*this.radius*3.14));

}

}//end class MyCircle

//习题2.13

public class Vehicle {

String brand;

String color;

int price;

int number;

public Vehicle(String b, String c) {

this.brand = b;

this.color = c;

}

public Vehicle(String b, String c, int p, int n) {

this(b, c);

this.price = p;

this.number = n;

}

void print() {

System.out.println("\n-------------------------");

System.out.println("the vehicle info as followed :");

System.out.println("brand=" + this.brand + "\t");

System.out.println("color=" + this.color + "\t");

System.out.println("price=" + this.price + "\t");

System.out.println("number=" + this.number + "\t"); } //end void print()

public static void main(String[] args) {

V ehicle c1=new Vehicle("vehicle1","white");

V ehicle c2=new Vehicle("vehicle2","white",300,1);

Car cr=new Car("car1","red",300,4,400);

Truck tk2=new Truck("truck1","black",300,400);

c1.print();

c2.print();

cr.print();

tk2.print();

} //end main()

} //end public class Vehicle

class Car extends Vehicle{

int speed;

Car(String b, String c, int p, int n,int s){

super(b,c,p,n);

this.speed=s;

}

void print(){

super.print();

System.out.print("speed="+this.speed); }

}//end class Car

class Truck extends Vehicle{

int speed;

int weight;

Truck(String b, String c, int s,int w){

super(b,c);

this.speed=s;

this.weight=w;

}

void print(){

super.print();

System.out.print("speed="+this.speed);

System.out.print("weight="+this.weight); }

}//end class Truck

//习题3.3

public class Test {

public static void main(String[] args) {

int b1=1;

int b2=1;

System.out.println("b1=" + b1);

System.out.println("b2=" + b2);

b1<<=31;

b2<<=31;

System.out.println("b1=" + b1);

System.out.println("b2=" + b2);

b1 >>= 31;

System.out.println("b1=" + b1);

b1 >>= 1;

System.out.println("b1=" + b1);

b2 >>>= 31;

System.out.println("b2=" + b2);

b2 >>>= 1;

System.out.println("b2=" + b2);

}

}

//习题3.4

public class Factorial {

private int result,initVal;

public static int Factorial(int n){

if(n==0){

return 1;

}

return n*Factorial(n-1);

}

public void print(){

System.out.println(initVal+"!="+result); }

public void setInitVal(int n){

initVal=n;

}

public static void main(String[] args) {

Factorial ff=new Factorial();

for(int i=0;i<=4;i++){

ff.setInitVal(2*(i+1));

ff.result=Factorial(ff.initVal);

ff.print();

}//end for()

}//end main()

}//end public class Factorial

public class Factorial2 {

private int result,initVal;

public void print(){

System.out.println(initVal+"!="+result);

}

public void setInitVal(int n){

initVal=n;

}

public static void main(String[] args) {

Factorial2 ff=new Factorial2();

for(int i=0;i<=4;i++){

ff.setInitVal(2*(i+1));

ff.result=1;

for(int j=2;j<=ff.initV al;j++){

ff.result*=j;

}

ff.print();

}//end for()

}//end main()

}

//习题3.5

public class MathRandomTest {

public static void main(String[] args) {

int count=0,MAXof100,MINof100;

int num,i;

MAXof100=(int)(100*Math.random());

MINof100=(int)(100*Math.random());

System.out.print(MAXof100+" ");

System.out.print(MINof100+" ");

if(MAXof100>50)count++;

if(MINof100>50)count++;

if( MAXof100

num=MINof100;

MINof100=MAXof100;

MAXof100=num;

}//end if()

for(i=0;i<98;i++){

num=(int)(100*Math.random());

System.out.print(num+((i+2)%10==9?"\n":" "));

if(num>MAXof100){

MAXof100=num;

}

else if(num

MINof100=num;

}

if(num>50){

count++;

}

}//end for()

System.out.println("the max of 100 random integers is "+MAXof100);

System.out.println("the min of 100 random integers is "+MINof100);

System.out.println("the number of random more than50 is "+count); }//end main()

}//end public class MathRandomTest

//习题3.7

public class PrintAst {

public void printAstar() {

System.out.print("*");

}

public void printSpace() {

System.out.print(" ");

}

public static void main(String[] args) {

PrintAst pa = new PrintAst();

int initNum = 13;

for (int i = 1; i <= initNum / 2 + 1; i++) {

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

pa.printSpace();

pa.printSpace();

}

for (int m = 1; m <= initNum - 2 * i + 2; m++) {

pa.printSpace();

pa.printAstar();

}

System.out.println();

} //end for

if (initNum % 2 == 0) {

for (int i = 1; i <= initNum / 2; i++) {

pa.printSpace();

pa.printSpace();

}

pa.printSpace();

pa.printAstar();

pa.printSpace();

pa.printAstar();

System.out.println();

}

for (int i = initNum / 2 + 2; i <= initNum; i++) {

for (int n = 1; n <= initNum - i + 1; n++) {

pa.printSpace();

pa.printSpace();

}

for (int m = 1; m <= 2 * i - initNum; m++) {

pa.printSpace();

pa.printAstar();

}

System.out.println();

} //end for

System.out.println();

} //end main()

} //end public class PrintAst

//习题3.8

public class PrintTriag {

public void printAstar() {

System.out.print("*");

}

public static void main(String[] args) {

int initLine = 10;

int initNum = 10;

PrintTriag pt = new PrintTriag();

for (int i = 0; i < initLine; i++) {

for (int j = 0; j < initNum - i; j++) {

pt.printAstar();

}

System.out.println();

}

}//end main()

}//end public class PrintTriag

习题3.9

import java.util.*;

public class MultipleTable {

public void printFormula(int i,int j,int res){

System.out.print(i+"*"+j+"="+res+" "); }

public static void main(String[] args) {

MultipleTable mt=new MultipleTable();

int initNum=9;

int res=0;

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

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

res=i*j;

mt.printFormula(i,j,res);

}

System.out.println();

}//end for

}//end main()

}//end public class MultipleTable

习题3.10

import java.io.*;

public class HuiWen {

boolean isHuiWen(char str[], int n) {

int net = 0;

int i, j;

for (i = 0, j = n - 1; i < n / 2; i++, j--) {

if (str[i] == str[j]) {

net++;

} //end if

} //end for

if (net == (int) (n / 2)) {

return true;

} //end if

else {

return false;

}

} //end boolean isHuiWen(char str[], int n)

java课后题答案

第1章Java概述 1.编译java application源程序文件将产生相应的字节码文件,这些字节码文件别 的扩展名为、java 2.执行一个java程序fristapp的方法就是运行java fristapp 3.main()方法的返回类型就是void 4.在java代码中,public static void main方法的参数描述正确的就是string args 【】,string【】args 5.内存的回收程序负责释放无用内存√ 6.java体系主要分为java ME,Java SE,JavaEE三大块 第2章Java基础 1.Java语言中,下列标识符错误的就是40name 2.java变量中,以下不属于引用类型的数据类型就是字符型 3.double d=5、3E12 × 4.C 5.A 6.for循环的一般形式为;for(初值;终值;增量),以下对for循环的叙述,正确 的就是初值与增量都就是赋值语句,终值就是条件判断语句 7.当输入下面选项中3值时,将会输出default 8.下面哪种方法能够支持javadoc命令/**…*/ 9.下面声明一个string类型的数组正确的就是string str[] 10.下面定义一个整型数组,不合法的就是int[][]array=new int[][4]; 11.给定代码;。。。。。下面叙述正确的就是输出的结果为:0 12.java语言规定,标示符只能由字母,数字美元符$与下划线租成,并且第一个 字符不能就是数字;java就是区分大小写的。 13.表达式1/2*3的计算结果就是0;设x=2,则表达式(x++)/3的值就是0 14.数组的长度可以用其属性lengt h获得;创建一个数组对象可以使用new关键 字创建 第3章面向对象基础 1.在java中引用对象变量与对象间有什么关系?引用变量就是指向对象的一个指针 2.对象就是面向对象技术的核心所在,在面向对象程序设计中,对象就是累的抽象× 3.构造方法何时被调用?创建对象时 4.A,B,D 5.在java语言中在包p1中包含包p2,类A直接隶属于p1,类B直接隶属于包p2、在类c中 要使用类a的方法与类b的方法b,需要选择import p1、*; import p1、p2,*;

JAVA程序设计习题库及答案

第一章JAVA语言概论 一、选择题 1。下列不属于java语言鲁棒性特点的是:A.java能检查程序在变异和运行时的错误 B。java 能运行虚拟机实现跨平台 C。java 自己操纵内存减少了内存出错的可能性D。java 还实现了真数组,避免了覆盖数据的可能2.java语言的执行模式是: A。全编译型 B.全解释型 C.半编译和半解释型 D.同脚本语言的解释模式 3.下列关于虚拟机说法错误的是: A。虚拟机可以用软件实现 B.虚拟机部可以用硬件实现 C.字节码是虚拟机的机器码 D.虚拟机把代码程序与各操作系统和硬件分开 4。java语言是1995年由()公司发布的 A.Sun B。Microsoft C.Borland D.Fox Software 5.下列不是虚拟机执行过程特点的是 A。双线程

B.多线程 C.动态链接 D.异常处理 6.java以JVM为基础,最下层是移植接口,由适配器和()组成A.网卡 B。Java os C。Java基本类 D。Java 应用程序和applet小程序 7。java程序的执行过程中用到一套JDK工具,其中javac.exe指A.java语言编译器 B.java字节码解释器 C.java文档生成器 D.java类分解器 8.java的API结构中,不属于类库主要包括的核心包的是 A.java包 B。javax C.javadoc包 D.org扩展包 9.每个java的编译单元可包含多个类或界面,但是每个编译单元最多只 能有()类或者界面是公共的 A.一个 B。两个 C。四个 D。任意多个

10.在当前的java实现中,每个编译单元就是一个以()为后缀的文件 A。java B.class C。doc D.exe 二、填空题 1. 1991年,SUN公司的Jame Gosling和Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个____软件,它是java的前身. 2. java是一个网络编程语言,简单易学,利用了____的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。 3. java可以跨平台的原因是____ 4. JVM的执行过程有三个特点:多线程,_____,异常处理; 5.JAVA程序的安全性体现在多个层次上,在_____,有语法检查;在解释层上,有字节码校验器、测试代码段格式和规则检查,访问权限和类型转换和法性检查,操作数堆栈的上溢或下溢,代码参数类型合法性等;在平台层上,通过配置策略,可设定访问资源域,而无需区分本地或远程。 6。 JAVA的产品主流操作系统平台是Solaris、_____和Macintosh. 7. JAVA系统运行时,通过______机制周期性的释放无用对象所使用的内存,完成对象的清除。 8。在JAVA语言中,将后缀名为______的源代码文件编译后形成后缀名为.c lass的字节码文件。 9。 JAVA语言的执行模式是半编译和______. 10. JAVA类库具有_____的特点,保证了软件的可移植性。 11。在编写执行JAVA程序的过程中需要用到一些工具,SUN公司为我们提供了一套JDK工具,它主要包括:javac.exe、java。exe、_____、ja vap.exe、jkb。exe 12.JAVA程序包括源代码(.java文件)、______、由归档工具jar生成的。jar文件、对象状态序列化.ser文件.

java入门到精通课后练习和答案(1-6章)

1.9练一练 一.填空题 1.运行编译后的class文件,需要输入命令java 2.JVM是指java虚拟器 3.Java程序源文件扩展名为java 二,简答题 1.简述java语言的特点 (1)简洁有效(2)可移植性(3)面向对象(4)解释型(5)适合分布式计算 2.java虚拟器的作用是什么? 答:保证编译后的java代码能够在安装java虚拟器的系统上运行。 2.5练一练 一.填空题 1.java程序是从main()处开始运行的。 2.在java中,多行注释的开始和结束标记分别为/*和*\。 3.声明1个名称“count”的整形变量的语句为int count; 4.Java程序中的标识符可由字母、数字、下划线和美元符号组成,但不能以数字开头,不能保留java保留的关键字。 二、简答题 1.简述设置变量的3种方法。 (1)在声明前设置 (2)在声明后设置 (3)在任何位置声明设置 2.简述提高程序可读性的两种方法。 *添加注释*使用缩进方法编写 3.4练一练 1.Eclipse是IBM花巨资开发的IDE集成开发环境(Intergrated Development Environment)。 2.【源代码】菜单中所包含的命令都是和代码编写相关的,主要用于源代码工作。 3.选择【文件】>【新建】>【项目...】命令,打开【新建项目】对话框。 二.简答题 1.Eclipse提供了哪两种程序调试方式? *java应用程序*调试 2.取消Eclipse启动时出现的设置工作空间的对话框的具体方法是什么? Eclipse启动时在【设置工作空间】的对话框中选中【将此值用作缺省值并且不再询问】复选框。 4.3练一练 1.变量是利用声明的方式,将内存中的某个块保留下来以供程序使用 2.常量就是固定不变的量,一旦被定义,它的值就不能再被改变。 3.当常量用于一个类的成员变量时,必须给常量赋值,否则会出现编译错误。 二.简答题 1.简述变量的命名规则 Java程序中的标识符可由字母、数字、下划线和美元符号组成,但不能以数字开头,不能保留java保留的关键字。 2.按作用范围划分,变量是如何划分的?

java课后答案

java课后答案 第一章 ,.发明java的原因是什么,发明java的主要贡献者是谁, 答:开发java语言的动力源于对独立平台的需要,即用这种语言编写的程序不会因为芯片的变化而发生无法运行或出现运行错误的情况。当时,c语言已无法满足人们的这一愿望,因为c语言总是针对特定的芯片将源程序编译成机器码,该机器码的运行就与特定的芯片指令有关,在其他类型的芯片上可能无法运行或者运行出错。主要贡献者是James Gosling。 2.“java编译器将源文件编译生成的字节码是机器码”,这句话正确吗, 答:不正确,字节码是很接近机器码谢谢了的二进制文件,不能被机器直接识别。 3. java应用程序的主类必须含有怎么样的方法, 4. "java应用程序必须有一个类是public类".这句话正确吗, 答:一个java应用程序必须有一个类含有public static void main(String args[] )方法,称为该应用程序的主类。 5. "java applet程序的主类必须是public类",这句话正确吗, 不正确 "java applet源文件的主类必须是public类",这句话正确吗, 正确 6. 叙述java源文件的命名法则。 答:(1)如果源文件中有多个类,那么只能有一个类是public类。(2)如果有一个类是public类,那么源文件的名字必须和这个类的名字完全相同,扩展名 为.java(3)如果源文件没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名为.java就可以了。(4)java语言区分大小写。 7. 源文件生成的的字节码运行时加载到内存中吗, 8. 怎样编写加载运行java applet的简单网页,

Java基础入门课后习题及答案

《Java基础入门》课后习题 第1章Java开发入门 一、填空题 1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。 2、Java程序的运行环境简称之为JRE_____。 3、编译Java程序需要使用_javac_____命令。 4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下。 5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用 来保存保存Java虚拟机要运行的“.class”文件路径。 二、选择题 1、以下选项中,哪些属于JDK工具?(多选)ABCD A、Java编译器 B、Java运行工具 C、Java文档生成工具 D、Java打包工具 2、Java属于以下哪种语言?C A、机器语言 B、汇编语言 C、高级语言 D、以上都不对 3、下面哪种类型的文件可以在Java虚拟机中运行?D A、.java B、.jre C、.exe D、.class 4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?B A、Java文档制作工具 B、Java解释器 C、Java编译器 D、Java启动器 5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java 命令,需要将环境变量path设置为以下哪个选项?B A.d:\jdk; B.d :\jdk\bin; C.d:\jre\bin; D.d:\jre;

《JAVA语言程序设计》期末考试试题及答案(应考必备题库)

《JA V A语言程序设计》期末考试试题及答案2(应考必备题库) 一.判断题 1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(×)4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)5.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(√)6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(√)7.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×)8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√)9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。(×) 二.单项选择题 1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?() A、String args B、String ar[] C、Char arg D、StringBuffer args[] 2.以下关于继承的叙述正确的是()。 A、在Java中类只允许单一继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口只允许单一继承 3.paint()方法使用哪种类型的参数? () A、Graphics B、Graphics2D C、String D、Color 4.以下哪个不是Java的原始数据类型() A、int B、Boolean C、float D、char

JAVA实用教程(第三版)课后习题答案

第一章Java语言概述 2.“java编译器将源文件编译为的字节码文件是机器码”这句话正确吗? 答:不正确 3.java应用程序的主类必须含有怎样的方法? 答:含有main方法 4。“java应用程序必须有一个类是public类”这句话正确吗? 答;不正确,只能有一个public类 5。“java Applet程序的主类必须是public类”这句话正确吗? 答:正确,因为java Applet主类必须是Applet类的子类并且是public 的类 6。请叙述java源程序的命名规则。 答:与public的类同名。 7。源文件生成的字节码文件在运行时都加载到内存中吗? 答:非也,动态随需要运行才加载。 8.面向对象的程序设计语言有那些基本特征? 答:封装;继承;多态性。 9.在Java程序中有多个类文件时,用Java命令应该运行那个类?答:具有main方法的类 第二章基本数据类型和数组 4。下列哪些语句是错的?

Int x=120; Byte b=120; b=x; 答:B=x;错应为b=(byte)x 5。下列哪些语句是错的? 答:y=d;错,应y=(float)d 6。下列两个语句是等价的吗? Char x=97; Char x=…a?; 答:是等价的。 7。下列system.out.printf语句输出结果是什么? Int a=97; Byte b1=(byte)128; Byte b2=(byte)(-129); System.out.printf(“%c,%d,%d”,a,b1,b2); 如果输出语句改为: System.out.printf(“%d,%d,%d”,a,b1,b2); 输出什么? 答:输出a ,-128,127 修改后输出97,-128,127 8.数组是基本数据类型吗?怎样获取数组的长度? 答:不是基本数据类型,是复合数据类型。可以通过:数组名.length

Java程序设计习题附答案(一)

Java程序设计题库 第一部分绪论 1、下列关于Java语言的特点,描述错误的是(C) A.Java是跨平台的编程语言B.Java支持分布式计算 C.Java是面向过程的编程语言D.Java支持多线程 2、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?(B) A、安全性 B、多线性 C、跨平台 D、可移植 3、Java JDK中调试器的命令是(C)。 A、javac B、java C、jdb D、avah 4、运行jar文件中class文件需要在java命令后面加的参数为(A)。 A、-cp B-g C-d D-verbose 5、下面哪项在java中是不合法的标识符?(C) A、$user B、point C、You&me D、_endline 6、下面关于Java语言说法正确的是(ABCD)。 A、Java语言是面向对象的、解释执行的网络编程语言。 B、Java语言具有可移植性,是与平台无关的编程语言。 C、Java语言可对内存垃圾自动收集。 D、Java语言编写的程序虽然是“一次编译,到处运行”,但必须要有Java的运行环境。 7、在Java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。( B) A、源, HTML B、源, 字节代码 C、字节代码, 源 D、HTML, 字节代码 8、Java的JVM是指(B)。 A、由Java操作的家用设备(通常是一个漂亮的小烤箱) B、Java字节代码的解释程序 C、Java源代码的编译器 D、运行Java 所需的硬件设备 9、在Java中,关于CLASSPA TH环境变量的说法不正确的是(A)。 A、CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B、编译器用它来搜索各自的类文件。 C、CLASSPATH是一个目录列表。 D、解释器用它来搜索各自的类文件。 10、一个可以独立运行的Java应用程序(D)。

java课后习题及答案

第一章JA V A语言概论 一、选择题 1. 下列不属于java语言特点的是:B A. java能检查程序在变异和运行时的错误 B. java 能运行虚拟机实现跨平台 C. java 自己操纵内存减少了内存出错的可能性 D. java 还实现了真数组,避免了覆盖数据的可能 2. java语言的执行模式是:C A. 全编译型 B. 全解释型 C. 半编译和半解释型 D. 同脚本语言的解释模式 3. 下列关于虚拟机说法错误的是:B A. 虚拟机可以用软件实现 B. 虚拟机部可以用硬件实现 C. 字节码是虚拟机的机器码 D. 虚拟机把代码程序与各操作系统和硬件分开 4. java语言是1995年由()公司发布的A A. Sun B. Microsoft C. Borland D. Fox Software 5. 下列不是虚拟机执行过程特点的是A A. 双线程 B. 多线程 C. 动态链接 D. 异常处理 6. java以JVM为基础,最下层是移植接口,由适配器和()组成B A. 网卡 B. Java os C. Java基本类 D. Java 应用程序和applet小程序 7. java程序的执行过程中用到一套JDK工具,其中javac.exe指A A. java语言编译器 B. java字节码解释器 C. java文档生成器 D. java类分解器 8. java的API结构中,不属于类库主要包括的核心包的是C A. java包 B. javax C. javadoc包 D. org扩展包 9. 每个java的编译单元可包含多个类或界面,但是每个编译单元最多只能有()类或者界面是公共的A

java程序设计试题库

《Java语言程序设计基础教程》 练习思考题参考答案 第1章Java程序设计概述 1、1单项选择题 1.编译Java Application源文件将产生相应得字节码文件,扩展名就是什么 A、、java ???? B、、class ?C、、html??? D、、exe 解答:B 2.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中“一次编 译,随处运行”得特点. ?A、简单性????B、平台无关性 C、面向对象性???? D、安全性 解答:B 3.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中并行机制得 特点。 ?A、多线程???B、平台无关性 C、面向对象性??? D、安全性 解答:A 4。在Java语言中,下列哪些语句关于内存回收得说明就是正确得? ?A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存; C.内存回收程序允许程序员直接释放内存; D.内存回收程序可以在指定得时间释放内存对象 解答:B 5.一个Java源文件中最多只能有多少个public类。 ?A、1个?B、2个

C、3个? D、任意多个 解答:A 6。下面哪一个不就是Java语言所具有得特点。 A、没有全局变量,在类得定义外部没有任何得变量定义; ?B、不直接支持指针操作,而使用更安全得引用类型; C、支持子类对父类得多继承; D、具有自动垃圾收集功能; 解答:C 7。下面哪一个不就是Java开发工具包JDK得组成部分. ?A、Java得编译器; B、Java得解释器;? ?C、Java得API继承类库; ?D、Eclipse开发工具; 解答:C 8。JDK提供得编译器就是()。 ?A、java、exe???B、javac、exe C、javap、exe??? D、javaw、exe 解答:B 9。作为Java应用程序入口得main方法,其声明格式可以就是() A、public voidmain(String[]args) B、public static void main(String []args) C、public static void Main(String* args) D、public int main(String []args) 解答:B 10.下列说法正确得就是( A ) A、JAVA程序得main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序得main方法中如果只有一条语句,可以不用{}(大括号)括起来 11。下列哪些语句关于Java内存回收得说明就是正确得? ( B) A、程序员必须创建一个线程来释放内存

《Java程序设计》课后习题参考答案

习题1参考答案 1.Java语言的特点有哪些? 答:参考1.1.2 防止直接访问数据变量看起来有些奇怪,但它实际上却对使用类的程序质量有极大的好处。既然数据的单个项是不可访问的,那么惟一的办法就是通过方法来读或写。因此,如果要求类成员内部的一致性,就应该通过类本身的方法来处理。 这种数据隐藏技术就是面向对象的重要特性——封装。它将类的外部界面与类功能的实现区分开来,隐藏实现细节,(通过公共方法)保留有限的对外接口,迫使用户使用外部界面,通过访问接口实现对数据的操作。即使实现细节发生了改变,还可通过界面承担其功能而保留原样,确保调用它的代码还继续工作,这使代码维护更简单。 2.简述封装的优点。 答:封装是一个简单而有效的思想,优点有:(1)模块化,对内成为一个结构完整、可进行自我管理、自我平衡、高度集中的整体。(2)信息隐蔽,对外则是一个功能明确、接口单一、可在各种适合的环境下都能独立工作的有机单元。 面向对象的程序设计实现了对象的封装,使得用户不必关心诸如对象的行为是如何实现的这样一些细节。通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理。类的封装性使得代码的可重用性大为提高,这样的有机单元特别适合构建大型标准化的软件系统,具有很高的开发效率。 3.Java的基本工具有哪些? (1)javac 编译器 (2)java 解释器 (3)jdb Java 语言调试器 (4)javadoc API文档管理器 (5)javah 头文件生成器 (6)appletviewer 小应用程序浏览器 (7)javap 类文件反汇编器 4.Java开发环境是如何配置的? 答:对于Windows 2000以上版本的操作系统,可以打开[控制面板]窗口,双击其中的[系统]图标,在[系统特性]窗口中单击[高级]选项卡,进而单击[环境变量]按钮。在出现的[环境变量]窗口中,在[系统变量]框中选择[Path]项,单击[编辑]按钮,在弹出的[编辑系统变量]窗口的[变量值]框后加上上面两条语句。 习题2参考答案 1.Java语言包含哪些数据类型? 答:包含基本数据类型和复合数据类型。基本类型包括整数类型、浮点数类型、布尔类型。复合类型包括类类型(Class Type)、接口类型(Interface Type)与数组类型(Array Type)。 2.Java有多少关键字? 答:abstract, continue, for, new, switch,boolean, default, goto*, null, synchronized,break, do, if, package, this,byte, double, implements, private, threadsafe,byvalve*, else, import, protected, throw,case, extends, instanceof, public, transient,catch, false, int, return, true,char, final,

java练习题答案

第1章java语言概述习题 一、填空题 1、面向对象程序的主要特征:继承,__封装___,___多态 _____。 2、java中的继承机制之所以能够降低程序的复杂性,提高程序的效率,主要是 因为它使代码可以__重用或复用___. 3、java语言中,为将源代码翻译成 __字节码__文件时产生的错误称为编译错误, 而将程序在运行中产生的错误称为运行错误。 4、javac是java语言中的编译器,基本语法是:javac[选项] __文件名__,java 是java语言中的解释执行器,基本语法是:java[选项]___类名___. 5、java语言的主要贡献者是谁James gosling 二、[ 三、单选题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文 件的扩展名为( B)。 A、java B、.class C、html D、.exe 2、main方法是Java Application程序执行的入口点,关于main方法的方法首 部, 以下(B)项是合法的。 A、public static void main() B、public static void main(String args[]) C、public static int main(String[] arg) ) D、public void main(String arg[]) 三、判断 1、Java语言具有较好的安全性和可移植性及与平台无关等特性。√ 2、Java语言的源程序不是编译型的,而是编译解释型的。√ 四、问答题 1、编写、运行java程序需要经过哪些主要步骤 答:1.编写源文件,扩展名必须是.java 2.编写java源程序,使用java编译器编写源文件,得到字节码文件 ~ 3.运行java程序,使用javaSE平台只不过的java解释器来解释执行字 节码文件。 2、阅读下列java源代码文件,并回答问题 public class Speak{ void speakHello(){ "I'm glad to meet you"); } } … class Xiti8{

java程序设计习题集

Java程序设计习题集 第一章Java基础知识 §1.1Java概述 1.完成在Windows 2000操作系统下环境变量的配置 2.创建一个Java程序,输出自己的基本信息:名字和年龄。 3.概述Java语言的版本发展过程。 4.简述Java语言的运行机制。 5.在自己的机器上用JDK开发运行环境完成第一个Java程序的编辑、编译、运行过程。 6.简述Java语言的特点,Java虚拟机的概念及作用。 §1.2 Java基本语法 1.什么是变量?什么是常量? 2.什么叫表达式,Java语言中共有几种表达式? 3.下面哪些表达式不合法?为什么? HelloWorld 2Thankyou _First -Month 893Hello non-problem HotJava implements $_MyFirst 4. 以下的选项中能正确表示Java语言中的一个整型常量的是( )。 A) 12. B) -20 C) 1,000 D) 4 5 6 5. 以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i; C) a=a + 1= 5; D) y = int ( i ); 6. 若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32 7. 若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A) 0 B) 4 C) 8 D) -4 8. 在Java语言中,逻辑常量只有true 和 ___________ 两个值。 9. Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float 和 __________两种具体类型。 10. Java语言是( )。 A.面向问题的解释型高级编程语言 B.面向机器的低级编程语言 C.面向过程的编译型高级编程语言 D.面向对象的解释型高级编程语言 11. 下列的变量定义中,错误的是( )。 A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$; 12. 以下的变量定义语句中,合法的是( )。 A) float $_*5= 3.4F; B) byte b1= 15678; C) double a =Double. MAX_VALUE; D) int _abc_ = 3721L; 13. 以下字符常量中不合法的是( )。 A) '|' B) '\'' C) "\n" D) '我' 14. 若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是( )。 A) b = a!=7 ; B) a = 7 + b + c=9; C) i=12.3* % 4; D) a = a + 7 = c + b;

《Java基础入门》课后章节习题及答案(完整版)

《Java基础入门》课后章节习题及答案(完整版)《Java基础入门》课后习题 第1章Java开发入门 一、填空题 1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。 2、Java程序的运行环境简称之为JRE_____。 3、编译Java程序需要使用_javac_____命令。 4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下。 5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用 来保存保存Java虚拟机要运行的“.class”文件路径。 二、选择题 1、以下选项中,哪些属于JDK工具?(多选)ABCD A、Java编译器 B、Java运行工具 C、Java文档生成工具 D、Java打包工具 2、Java属于以下哪种语言?C A、机器语言 B、汇编语言

C、高级语言 D、以上都不对 3、下面哪种类型的文件可以在Java虚拟机中运行?D A、.java B、.jre C、.exe D、.class 4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?B A、Java文档制作工具 B、Java解释器 C、Java编译器 D、Java启动器 5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java 命令,需要将环境变量path设置为以下哪个选项?B A.d:\jdk; B.d :\jdk\bin; C.d:\jre\bin; D.d:\jre; 三、问答题 1、简述Java的特点。 面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。 2、简述JRE与JDK的区别。

java语言程序设计课后习题答案解析

习题2 3.使用“= =”对相同内容的字符串进行比较,看会产生什么样的结果。 答:首先创建一个字符串变量有两种方式:String str = new String("abc"); String str = "abc"; 使用“= =”会因为创建的形式不同而产生不同的结果: String str1 = "abc"; String str2 = "abc"; System.out.println(str1= =str2); //true String str1 = new String("abc"); String str2 = "abc"; System.out.println(str1= =str2); //false String str1 = new String("abc"); String str2 = new String("abc"); System.out.println(str1= =str2); //false 因此自符串如果是对内容进行比较,使用equals方法比较可靠。 String str1 = "abc"; String str2 = "abc"; System.out.println(str1= =str2); //true String str1 = new String("abc"); String str2 = "abc"; System.out.println(str1.equals(str2)); //true String str1 = new String("abc"); String str2 = new String("abc"); System.out.println(str1.equals(str2)); //true 5.编写一个程序,把变量n的初始值设置为1678,然后利用除法运算和取余运算把变量的每位数字都提出来并打印,输出结果为:n=1678。n的每位数字是1,6,7,8。若n为任意值呢? 法一: public class Exercise5{ public static void main(String[] args){ int n=1678; int unit; int decimal; int hundred; int thousand; int count; thousand=n/1000; count=n%1000; hundred=count/100; count=count%100; decimal=count/10; count=count%10; unit=count; System.out.println("1678包含的数 字分别是: "+thousand+','+hundred+','+decimal+', '+unit); } } //如果n为任意值 import java.io.*; public class Exercise51{ public static void main(String[] args) throws IOException{ System.out.print("请输入一个整数:"); InputStreamReader isStream=new InputStreamReader(System.in); BufferedReader bfReader=new BufferedReader(isStream); String input=bfReader.readLine(); int length=input.length()-1; int n=new

Java程序的设计课后复习题参考答案

高等院校计算机基础教育规划教材《Java 程序设计》课后习题参考答案 ――大学 习题1参考答案 1.Java语言的特点有哪些? 答:参考1.1.2 防止直接访问数据变量看起来有些奇怪,但它实际上却对使用类的程序质量有极大的好处。既然数据的单个项是不可访问的,那么惟一的办法就是通过方法来读或写。因此,如果要求类成员部的一致性,就应该通过类本身的方法来处理。 这种数据隐藏技术就是面向对象的重要特性——封装。它将类的外部界面与类功能的实现区分开来,隐藏实现细节,(通过公共方法)保留有限的对外接口,迫使用户使用外部界面,通过访问接口实现对数据的操作。即使实现细节发生了改变,还可通过界面承担其功能而保留原样,确保调用它的代码还继续工作,这使代码维护更简单。 2.简述封装的优点。 答:封装是一个简单而有效的思想,优点有:(1)模块化,对成为一个结构完整、可进行自我管理、自我平衡、高度集中的整体。(2)信息隐蔽,对外则是一个功能明确、接口单一、可在各种适合的环境下都能独立工作的有机单元。 面向对象的程序设计实现了对象的封装,使得用户不必关心诸如对象的行为是如何实现的这样一些细节。通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理。类的封装性使得代码的可重用性大为提高,这样的有机单元特别适合构建大型标准化的软件系统,具有很高的开发效率。 3.Java的基本工具有哪些? (1)javac 编译器 (2)java 解释器 (3)jdb Java 语言调试器 (4)javadoc API文档管理器 (5)javah 头文件生成器 (6)appletviewer 小应用程序浏览器 (7)javap 类文件反汇编器 4.Java开发环境是如何配置的? 答:对于Windows 2000以上版本的操作系统,可以打开[控制面板]窗口,双击其中的[系统]图标,在[系统特性]窗口中单击[高级]选项卡,进而单击[环境变量]按钮。在出现的[环境变量]窗口中,在[系统变量]框中选择[Path]项,单击[编辑]按钮,在弹出的[编辑系统变量]窗口的[变量值]框后加上上面两条语句。

清华大学出版社 Java课后答案

第1章: 参考答案: 习题集: 一、填空题 1.多态 2.java.exe 3.jdb.exe 4.标准字节码 5.java 6.独立于平台 二、选择题 1.B 2.A 3.B 4.A 5.A 6.C 7.C 8.D 9.C 第2章: 参考答案: 实验指导: 2.5.1.第一处需要的代码:yourGuess>realNumber 第二处需要的代码:yourGuess=input.nextInt(); 第三处需要的代码:yourGuess

《Java基础入门》_课后习题答案解析__1~

第1章 Java开发入门 一、填空题 1、Java EE、Java SE、Java ME 2、JRE 3、javac 4、bin 5、path、classpath 二、选择题 1、ABCD 2、C 3、D 4、B 5、B 三、简答题 1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。 2、JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程 序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE。 JDK(Java Development Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的。初学者学习和使用Java语言时,首先必须下载和安装JDK。JDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。 四、编程题 public class HelloWorld { public static void main(String[] args) { System.out.println("这是第一个Java程序!"); } } 第2章 Java编程基础 一、填空题 1、 class 2、 true和false 3、单行注释、多行注释、文档注释 4、基本数据类型、引用数据类型 5、 1、2、4、8 6、 & && | || 7、 0 8、 5 9、 34 10、56 二、判断题 1、错 2、对 3、错 4、对 5、错

大学《java程序设计》考试题库及答案

若有定义int a=2,b=2; 则表达式(a++)+(++b) 的值是( )。 A. 5 监听器接口的方法返回值的类型是()。C. void 在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。 D. init() 以下哪个不是Java的原始数据类型() B. Boolean 向Applet传递参数的正确描述是()。C. C. PARAM name="age,value=20" 阅读下列代码; public class Test{ String s="One World One Dream"; public static void main(String args[]){ System.out.println(s); } } 其运行结果是_ C. 编译时出错//除非创建Text类的对象 如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()。 A. p.add(b,"South"); 编译和运行下面的应用程序,并在命令行界面输入12345 ,则回车后屏幕输出的结果是( )。public class A { public static void main(String args[]) throws IOException{ BufferedReader buf=new BufferedReader( new I nputStreamReader(System.in)); String str=buf.readLine(); int x=Integ er.parseInt(str); System.out.println(x/100); } } B. 123 构造函数何时被调用?() B. 创建对象时 以下哪项可能包含菜单条()。 D. Frame

相关文档