JAVA基础第3章类与对象-练习题
《Java语言程序设计基础教程》习题解答

解答:A
17、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用______字节内存空间,这样,无论是中文字符还是英文字符,都是占用______字节内存空间。
18、设x =2 ,则表达式(x ++)/3 的值是______。
C.defaultD.private
解答:C
5、下面哪一个特性不是面向对象编程主要体现的()。
A.封装性ﻩﻩB.继承
C.多态ﻩﻩD.类
解答:C
6、 不允许作为类及类成员的访问控制符的是()。
A.publicﻩB.private
C.staticﻩﻩﻩD.protected
解答:C
7、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。
A.int a[][]=new int[5][5];ﻩB. int [][]b=newint[5][5];
C. int []c[]=new int[5][5];ﻩD.int [][]d=newint[5,5];
解答:D
16、关于下面的程序,正确的结论是______。
publicclassex4_7{
解答:D
3、ﻩpublic staticvoid main方法的参数描述是:()
A.Stringargs[]ﻩﻩﻩB.String[] args
C.Stringsargs[]ﻩﻩD.Stringargs
解答:A,B
4、在Java中,关于CLASSPATH环境变量的说法不正确的是:()
A.CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。
第二、三章Java语法知识复习练习

第二、三章 Java基础知识与流程结构1、Java语言是()A、区分大小写的B、不完全区分大小写C、完全不区分大小写D、以上说法都不对2、Java语言中,下列标识符错误的是A、nameB、?questionC、$numberD、_tree3、在Java语言中,int类型在内存中所占的位数为A、8B、16C、32D、644、以下不属于基本类型的是A、intB、interfaceC、floatD、char5、Java变量中,以下不属于复合类型的数据类型是A、数组型B、类C、整数型D、接口6、专门定义常量的保留字是A、varB、interfaceC、finalD、const7、下列定义变量错误的是A、int al;B、char ch1;C、int d1=10;D、bool bl1;8、下列定义变量错误的是()A、char s="23";B、short I=100;C、double d;D、String srt="weare me!";9、在给数值类型赋值时,如数字后没有字母,计算机默认为()类型A、integer类型B、float类型C、double类型D、字符类型10、将较长的数据类型转换为较短的整数类型,要进行()A、类型的自动转换B、类型的强制转换C、无需转换D、无法实现11、下列表示回车的是A、\fB、\nC、\tD、\r12、下列赋值语句错误的是A、i=i;B、I = = 0;C、I = I +1;D、I += 1;13、在Java中,”%”符号的作用是A、求百分比B、求余C、除D、取整14、下面不属于Java条件分支语句结构的是A、if-else if结构B、if-else结构C、if-else if-else结构D、if-end if结构15、Java中最简单的条件语句是( )结构A、if结构B、while结构C、if-else结构D、以上都不对16、当x=1、y=3,时,表达式 x%=y 的运算结果为( )A、x=2,y=3B、x=0,y=3C、x=1,y=3D、x=1,y=217、if语句中“条件”表达式可以是A、关系表达式B、布尔逻辑表达式C、选项A、B都是D、以上都错18、if语句中“条件”为“真”时,可以执行A、一条语句B、两条语句C、多条语句D、一条语句,或者由“{}”括起的代码块19、If-else语句中的else子句A、可以单独使用B、不能单独使用C、可以在一定条件下单独使用D、可以配合while使用20、三元条件运算符ex1 ? ex2: ex3,相当于下面的( )语句A、if(ex1) ex2;else ex3;B、if(ex2) ex1;else ex3;C、if(ex1) ex3;else ex2;D、if(ex3) ex2;else ex1;21、Java程序中的语句不可以是A、单一的一条语句B、{}括起来的语句块C、复合语句D、汉字语句22、switch语句表达式的值与某case子句的值匹配后A、执行该子句后的所有语句,遇到break终止执行B、只执行该case子句C、执行该子句后的所有语句,除了default子句D、只执行default子句23、switch语句中A、必须有default子句B、不必有default子句C、必须有default子句和至少一个case子句D、必须有default子句,不必有case子句24、switch语句中A、case子句中的值不一定必须是常量B、case子句中的值可以是变量C、case子句的值必须是常量D、case 子句的值必须是变量25、在switch语句中,每个case子句后A、都必须有一个break语句B、不应存在break语句C、如果不想执行以后的case分支和default分支,应有break语句D、如果想执行以后的case分支和default分支,应有break语句26、下面对do-while结构描述错误的是A、先执行循环体,再判断终止条件,若结果为true,循环执行循环体,直到布尔表达式为falseB、循环体至少执行一次C、循环中可以使用break跳出循环D、与while语句完全相同27、对for循环初始化描述正确的是A、必须执行初始化操作B、首先执行初始化操作C、先执行循环体内容再执行初始化操作D、以上都不对28、可以在for循环初始化部分声明一个变量,其作用域是A、for循环所在的代码块B、整个for循环C、for循环后的所有部分D、全部代码29、for循环的循环次数A、是确定的B、不是确定的C、通常是确定的,但也可以不确定D、通常不确定,但也可以确定30、对for循环中初始化、终止和迭代部分的描述错误的是A、都可以为空语句B、之间的分号不能省略C、可以部分为空语句D、可以用逗号彼此分隔31、break语句可以用在switch语句中,执行后A、跳出所在的case子句,执行下一条case子句B、跳出所在的case子句,执行最后的default子句C、跳出整个switch子句D、以上说法都不对32、break语句可以在循环语句中执行,执行后A、跳出本次循环,继续进行下次循环B、跳出循环,从紧跟循环的第一条语句执行C、跳出循环,从循环条件处执行D、跳出本次循环,到指定处运行33、执行continue语句后A、跳出整个循环B、跳过循环体中下面的语句,继续下次循环C、下次循环前不需要判断终止条件D、以上说法不对34、下列说法错误的是A、Java是面向对象的语言B、Java以类为程序的基本单位C、类就是对象D、在Java语言中,类是具有某种功能的基本模块的描述35、Java程序结构中,源文件的主文件名与程序公共类名()A、开头字母必须大写B、可以不同C、必须相同D、以上说法都不对36、Java语言中,byte类型在内存中所占的位数为A、8B、16C、32D、6437、long类型存储时占()位bit。
《Java面向对象程序设计》课件-第3章 类和对象

3.4.2 访问权限
35
练习3.4
1.[单选题]被声明为private、protected及public的类成员,对于在类的外部,以下说法中 ________是正确的?
A.都不能访问
B.都可以访问
C.只能访问声明为public的成员 员
D.只能访问声明为protected和public的成
2.[单选题]在Java语言中,被______修饰符修饰的成员变量只可以被该类本身访问。
20
实例变量VS类变量
实例变量必须用对象名访问 类变量可以用类名访问,也可以用对象名访问
21
3.3.2 实例方法和类方法
成员方法的定义:
[访问权限] 返回值类型 方法名([参数列表]){ 方法体
} public String getPassword() {
//实例方法,获取密码
return password;
11
对象的创建
声明对象变量
✓ 类名 对象名(对象的引用)
Car c1; c1=new Car("京A08L35");
创建对象 类名 对象名=new 构造方法(); Car c1=new Car("京A08L35");
new
12
main()方法
main()方法: public static void main(String args[])
类型。
private String carNum;
每个类都有一个默pu认b的li构c C造a方r法()({它没有任何参数),如果类 没有重新定义构造方ca法rN,u则m创=建"京对象A时08系L统3自4"动; 调用默认的 } 构造方法。否则,p创ub建li对c 象Ca时r调(S用tr自in定g义n的u构m造){方法。
java程序设计教程第六版 第3章

1-13
String 类的常用方法
• 当String类的对象创建后,此对象的长度和值都不能修 改 • String类的对象是不可改变的 • 但是String类的一些方法可以,在原来String类对象的 基础上,返回新的String类对象 • 第79页,列出了String类的常用方法
1-14
字符串索引
1-17
包
• Java类库中的类采用包的方式组织管理。
例如:java.awt包中是完成绘图、图形用户界面创建的类
• 下面是java标准类库中的一些包:
包
目的
General support Creating applets for the web Graphics and graphical user interfaces Additional graphics capabilities Network communication Utilities XML document processing
ng java.applet java.awt javax.swing java.util javax.xml.parsers
1-18
import 语句
标准类库中,除ng包中的类系统自动引入外, 其他包的类使用时:
• 我们可以使用类的全名
java.util.Scanner scan = new java.util.Scanner (System.in);
title = new String ("Java Software Solutions");
调用 String类的构造函数, 构造函数是一个特殊的方法,用于建立对象
• 对象的创建也称作初始化。
• 一个对象是某个类的一个实例
《Java基础入门》课后题答案

《Java基础入门》习题答案第1章Java开发入门一、填空题1、Java EE、Java SE、Java ME2、JRE3、javac4、bin5、path、classp ath二、选择题1、ABCD2、C3、D4、B5、B三、简答题1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。
2、JRE(Java Runtim e Enviro nment,Java运行时环境),它相当于操作系统部分,提供了Jav a程序运行时所需要的基本条件和许多Jav a基础类,例如,IO类、GUI控件类、网络类等。
JRE是提供给普通用户使用的,如果你只想运行别人开发好的Jav a程序,那么,你的计算机上必须且只需安装JRE。
JDK(Java Develo pment Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Ja va开发人员使用的。
初学者学习和使用Jav a语言时,首先必须下载和安装JD K。
JDK中已经包含了JR E部分,初学者安装J DK后不必再去下载和安装JRE了。
四、编程题public classHelloW orld{public static void main(String[] args) {System.out.println("这是第一个J ava程序!");}}第2章Java编程基础一、填空题1、class2、true和false3、单行注释、多行注释、文档注释4、基本数据类型、引用数据类型5、1、2、4、86、& && | ||7、08、59、3410、56二、判断题1、错2、对3、错4、对5、错三、选择题1、AD2、AD3、C4、ABCD5、C 6 、A 7、AC 8、A 9、B 10、A四、程序分析题1、编译不通过。
Java练习题1-4章

第1章Java开发入门一、填空题1、Java程序的运行环境简称之为______。
2、编译Java程序需要使用______命令。
3、和两个可执行程序存放在JDK安装目录的______目录下。
4、______环境变量用来存储Java的编译和运行工具所在的路径。
二、选择题1、Java属于以下哪种语言A、机器语言B、汇编语言C、高级语言D、以上都不对2、下面哪种类型的文件可以在Java虚拟机中运行A、.javaB、.jreC、.exeD、.class3、安装好JDK后,在其bin目录下有许多exe可执行文件,其中命令的作用是以下哪一种A、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器4、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项A.d:\jdk;B.d:\jdk\bin;C.d:\jre\bin;D.d:\jre;第2章基本数据类型与数组一、填空题1、Java中的程序代码都必须在一个类中定义,类使用______关键字来定义。
2、布尔常量即布尔类型的两个值,分别是______和______。
3、Java中的注释可分为三种类型,分别是______、______、______。
4、Java中的变量可分为两种数据类型,分别是______和______。
5、在Java中,byte类型数据占______个字节,short类型数据占______个字节,int类型数据占______个字节,long类型数据占______个字节。
6、在逻辑运算符中,运算符______和______用于表示逻辑与,______和______表示逻辑或。
7、若x = 2,则表达式( x + + )/3 的值是______。
8、若int a =2; a+=3;执行后,变量a的值为______。
9、若int []a={12,45,34,46,23}; ,则a[2]= ______。
JAVA开发实战经典-课后习题答案
********* Java 程序设计 *********
*************************************
答案:
public class TestDemo {
public static void main(String[] args) {
System.out.println("*************************************");
A、 2、6、6
B、 4、9、9
C、 4、6、12
D、 3、9、9
12、 以下的 B 能正确表示Java语言中的一个整型常量。
A、 35.d
B、 -20
C、 1,234 D、 "123"
13、 下面的数据类型 D 是float型
A、 33.8
B、 129
C、 89L
D、 8.6F
14、 下列关于自动类型转换的说法中,正确的一个是 B 。
是 *.class 。 7、 布尔型数据类型的关键字是 boolean ,有 true 和 false 两种取值。 8、 整型数可以采用 byte 、 short 、 int 和 long 四种类型表示。 9、 根据占用内存长度的不同将浮点型分为 float 和 double 两种。 10、 Java程序结构分为: 顺序结构 、 分支结构 、 循环结构 三种。 11、 逻辑表达式:true&&false&&true的结果是 false 。 12、 逻辑表达式:!true||false的结果是 false 。 13、 在方法中可以使用 return 语句来结束方法的执行。 14、 方法中的 void 关键字用来表示方法不返回任何值。
《Java基础入门》-课后习题答案
《Java基础入门》课后习题答案第1章Java开发入门一、填空题1、Java EE、Java SE、Java ME2、JRE3、javac4、bin5、path、classpath二、选择题1、ABCD2、C3、D4、B5、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) {"这是第一个Java程序!");}}第2章 Java编程基础一、填空题1、 class2、 true和false3、单行注释、多行注释、文档注释4、基本数据类型、引用数据类型5、 1、2、4、86、 & && | ||7、 08、 59、 3410、56二、判断题1、错2、对3、错4、对5、错三、选择题1、AD2、AD3、C4、ABCD5、C 6 、A 7、AC 8、A 9、B 10、A四、程序分析题1、编译不通过。
int值4和b相加时,由于变量b的类型为byte,取值范围没有int类型大,存不下int类型的值,因此编译不通过。
《Java语言程序的设计基础教程》习题解答
《Java语言程序设计基础教程》练习思考题参考答案第1章 Java程序设计概述1.9 练习思考题1、Java运行平台包括三个版本,请选择正确的三项:()A. J2EEB. J2MEC. J2SED. J2E解答:A,B,C2、Java JDK中反编译工具是:()A. javacB. javaC. jdbD. javap解答:D3、public static void main方法的参数描述是:()A. String args[]B. String[] argsC. Strings args[]D. String args解答:A,B4、在Java中,关于CLASSPATH环境变量的说法不正确的是:()A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。
B. 编译器用它来搜索各自的类文件。
C. CLASSPATH是一个目录列表。
D. 解释器用它来搜索各自的类文件。
解答:A5、编译Java Application源文件将产生相应的字节码文件,扩展名为()A. .javaB. .classC. .htmlD. .exe解答:B6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。
7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。
8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。
9、开发与运行Java程序需要经过哪些主要步骤和过程?10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的?11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
JAVA语言与面向对象程序设计课后习题答案
JAVA语言与面向对象程序设计课后习题答案第1章面向对象软件开发概述1.简述面向过程问题求解和面向对象问题求解的异同。
试列举出面向对象和面向过程的编程语言各两种。
请问:面向过程问题解,以具体内容的解题过程为研究和同时实现的主体,其思维特点更吻合于计算机;面向对象的问题解,则就是以d对象‖为主体,d对象‖就是现实世界的实体或概念在计算机逻辑中的抽象化则表示,更吻合于人的思维特点。
面向过程的编程语言:c,pascal,foratn。
面向对象的编程语言:c++,java,c#。
2.详述对象、类和实体及它们之间的相互关系。
尝试从日常碰触至的人或物中抽象化出来对象的概念。
答:面向对象技术中的对象就是现实世界中某个具体的物理实体在计算机逻辑中的映射和体现。
类是同种对象的集合与抽象。
类是一种抽象的数据类型,它是所有具有一定共性的对象的抽象,而属于类的某一个对象则被称为是类的一个实例,是类的一次实例化的结果。
如果类是抽象的概念,如d电视机‖,那么对象就是某一个具体的电视机,如d我家那台电视机‖。
3.对象存有哪些属性?什么就是状态?什么就是犯罪行为?二者之间有何关系?建有对象d学生‖,精义这个对象设计状态与犯罪行为。
答:对象都具有状态和行为。
对象的状态又称作对象的静态属性,主要指对象内部所涵盖的各种信息,也就是变量。
每个对象个体都具备自己专有的内部变量,这些变量的值标明了对象所处的状态。
行为又称为对象的操作,它主要表述对象的动态属性,操作的作用是设置或改变对象的状态。
学生的状态:姓名、性别、年龄、所在学校、所在系别、通讯地址、电话号码、入学成绩等;学生的行为:自我介绍、入学注册、选课、参加比赛等。
4.对象间存有哪三种关系?对象d班级‖与对象d学生‖就是什么关系?对象d学生‖与对象d大学生‖就是什么关系?答:对象间可能存在的关系有三种:包含、继承和关联。
对象d班级‖与对象d学生‖是包含关系。
对象d学生‖与对象d大学生‖是继承关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章类与对象
一.选择题
1.下列不属于面向对象编程的特性是(D)。
A.封装性 B. 继承性 C. 多态性 D. 编译执行
2.下列类的声明中不合法的是(C)。
A. class People{…}
B. class 植物{…}
C. Class A{…}
D. public class 共有类{…
3.下列方法的声明中不合法的是(C)。
A. float area(){…}
B. void area(){…}
C. double area(d){…}
D. int area(int r){…}
4. 下列构造方法(构造器)的调用中正确的是(C)。
A. 按照一般的方法调用
B. 由用户直接调用
C. 只能通过new自动调用
D. 被系统调用
5.下列程序运行的结果是(A)。
class Book{
int width;
int length;
}
public class A{
static void f(Book p){
p.width=20;
p.length=40;
}
public static void main(String args[]){
Book b=new Book();
b.width=10;
b.length=20;
f(b);
" "+b.width);
" "+b.length);
}
}
A. 20 40
B. 10 40
C. 10 20
D. 以上都不对
6.下列程序运行的结果是(D)。
public class A{
static void f(int y){
y=y+10;
}
public static void main(String args[]){
double x=10;
f(x);
;
}
}
A. 10
B. 20
C. 10.0
D. 程序编译错误
7.下列程序运行的结果是(C)。
public class A{
int z=20;
static void f(int y){
y=z;
;
}
public static void main(String args[]){
f(10);
}
}
A. 10
B. 20
C. 程序编译错误
D. 以上都不对
8. 以下代码的输出结果为(C)。
public class Pass{
static int j=20;
public static void main(String args[]){
int i=10;
Pass p = new Pass();
p.amethod(i);
" and "+j);
}
public void amethod(int x){
x=x*2;
j=j*2;
}
}
A.错误: 方法参数与变量不匹配
B. 20 and 40
C. 10 and 40
D. 10 and 20
9. 编译和运行程序会出现什么样的结果(A)。
public class Ref{
public static void main(String args[]){
Ref r = new Ref();
r.amethod(r);
}
public void amethod(Ref r){
int i=99;
multi(r);
;
}
public void multi(Ref r){
r.i = r.i * 2;
}
}
A.编译出错 B. 输出:99 C. 输出:198 D. 运行出错10. 关于以下程序代码的说明正确的是(D)。
1.class HasStatic{
2. static int x=100; int y=0;
3. public static void main(String args[]){
4. HasStatic hs1=new HasStatic();
5. hs1.x++;
6. HasStatic hs2=new HasStatic();
7. hs2.x++;
8. hs1=new HasStatic();
9. hs1.x++;
10. HasStatic.x- -;
11. "x="+x);
12. }
13.}
A.5行不能通过编译,因为引用了私有静态变量
B.10行不能通过编译,因为x是私有静态变量
C.程序通过编译,输出结果为:x=103
D.程序通过编译,输出结果为:x=102
11. 有如下代码:
public class Test {
void printValue(int m){
do {
"The value is"+m);
}while( --m > 10 );
}
public static void main(String arg[]) {
int i=10;
Test t= new Test();
t.printValue(i);
}
}
其输出结果是什么(C)。
A. The value is 8
B. The value is 9
C. The value is 10
D. The value is 11
12. 以下代码的调试结果为(D)。
1. public class Q21
2. {
3. int maxElements;
4.
5. void Q21()
6. {。