当前位置:文档之家› Java面向对象编程-练习题

Java面向对象编程-练习题

Java面向对象编程-练习题
Java面向对象编程-练习题

1【练习题】类的成员变量:

猜数字游戏:一个类A有一个成员变量v,有一个初值100。定义一个类,对A 类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。

2【练习题】类的成员变量:

请定义一个交通工具(Vehicle)的类,其中有:

属性:速度(speed),体积(size)等等

方法:移动(move()),设置速度(setSpeed(int speed)),加速speedUp(),减速speedDown()等等.

最后在测试类Vehicle中的main()中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。

3【练习题】类的成员变量与方法、构造方法

在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。

定义名为MyTime的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。

为MyTime类定义构造方法,以方便创建对象时初始化成员变量。

再定义diaplay方法,用于将时间信息打印出来。

为MyTime类添加以下方法:

addSecond(int sec)

addMinute(int min)

addHour(int hou)

subSecond(int sec)

subMinute(int min)

subHour(int hou)

分别对时、分、秒进行加减运算。

4【练习题】构造方法

编写Java程序,模拟简单的计算器。

定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。编写构造方法,赋予n1和n2初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量执行加、减、乘、除的运算。

在main方法中创建Number类的对象,调用各个方法,并显示计算结果。

5【练习题】构造方法:

编写Java程序,用于显示人的姓名和年龄。

定义一个人类(Person),该类中应该有两个私有属性,姓名(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将姓名和年

龄打印出来。

在main方法中创建人类的实例,然后将信息显示。

6【练习题】构造方法与重载

为“无名的粉”写一个类:class WuMingFen 要求:

1.有三个属性:面码:String theMa 粉的分量(两):int quantity

是否带汤:boolean likeSoup

2.写一个构造方法,以便于简化初始化过程,如:

WuMingFen f1 = new WuMingFen("牛肉",3,true);

3.重载构造方法,使得初始化过程可以多样化:

WuMingFen f2 = new WuMingFen("牛肉",2);

4.如何使得下列语句构造出来的粉对象是酸辣面码、2两、带汤的?

WuMingFen f3 = new WuMingFen();

5.写一个普通方法:check(),用于查看粉是否符合要求。即:将对象的三个属性打印在控制台上。

7【练习题】构造方法的重载:

定义一个名为Vehicles(交通工具)的基类,该类中应包含String类型的成员属性brand(商标)和color(颜色),还应包含成员方法run(行驶,在控制台显示“我已经开动了”)和showInfo(显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。

编写Car(小汽车)类继承于Vehicles类,增加int型成员属性seats(座位),还应增加成员方法showCar(在控制台显示小汽车的信息),并编写构造方法。

编写Truck(卡车)类继承于Vehicles类,增加float型成员属性load(载重),还应增加成员方法showTruck(在控制台显示卡车的信息),并编写构造方法。在main方法中测试以上各类。

8【练习题】构造方法与重载

定义一个网络用户类,要处理的信息有用户ID、用户密码、email地址。在建立类的实例时,把以上三个信息都作为构造函数的参数输入,其中用户ID和用户密码时必须的,缺省的email地址是用户ID加上字符串"@https://www.doczj.com/doc/0a9812889.html,"

9【练习题】构造方法与重载、包

编写Addition类,该类中应包含一组实现两数相加运算的重载方法。

实现加法运算的方法,应接受两个参数(即加数和被加数),方法将两个参数进行加法运算后,返回相加结果。考虑可能针对不同的数据类型进行计算,重载一组方法,包括整型、长整型、浮点型、双精度浮点型、还有字符串。

在main方法中创建Addition类的实例,分别调用重载方法测试其效果。

应将Addition类打入到包中,以自己名字的拼音为包命名。

10【练习题】构造方法与重载

将上次练习题三中编写的MyTime类打到以自己名字的拼音命名的包中,并为该类重载一组构造方法,以方便使用者能够以多种形式初始化该类的实例。

11【练习题】构造方法与重载

建立一个汽车类,包括轮胎个数,汽车颜色,车身重量等属性。并通过不同的构造方法创建事例。

至少要求:汽车能够加速,减速,停车。

要求:命名规范,代码体现层次,有友好的操作提示。

12【练习题】构造方法与重载

创建一个类,为该类定义三个构造函数,分别执行下列操作:

1、传递两个整数值并找出其中较大的一个值

2、传递三个double值并求出其乘积

3、传递两个字符串值并检查其是否相同

4、在main方法中测试构造函数的调用

13【练习题】Static关键字与普通变量的区别:

创建一个名称为StaticDemo的类,并声明一个静态变量和一个普通变量。对变量分别赋予10和5的初始值。在main()方法中输出变量值。

14【练习题】继承:

创建一个名称为MainPackage的包,使它包含MainClass和MainSubClass类。MainClass类应当包含变量声明,其值从构造函数中输出。MainSubClass类从MainClass派生而来。试执行下列操作:创建一个名称为SamePackage的类,使它导入上述包,并创建一个MainSubClass类的对象。

15【练习题】包、继承、构造函数

创建一个名称为MainPackage的包,使它包含MainClass和MainSubClass类。MainClass类应当包含变量声明,其值从构造方法中输出。MainSubClass类从MainClass派生而来。试执行下列操作:创建一个名称为SamePackage的类,使它导入上述包,并创建一个MainSubClass类的对象。

16【练习题】继承:

创建一个父类和子类,父类有一个数据成员,子类继承父类的该数据成员,通过构造函数初始化并显示该数据成员的值。

17【练习题】覆盖、继承

建立一个汽车Auto类,包括轮胎个数,汽车颜色,车身重量、速度等成员变量。并通过不同的构造方法创建实例。至少要求:汽车能够加速,减速,停车。再定义一个小汽车类Car,继承Auto,并添加空调、CD等成员变量,覆盖加速,减速的方法

Java基础知识问答题

Java 基础知识问答题 包含的模块 本文分为十九个模块,分别是:Java 基础、容器、多线程、反射、对象拷贝、Java Web 、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM,如下图所示:

共包含208 道问答题,本文的宗旨是为读者朋友们整理一份基础知识的简单大纲,下面一起进入主题吧。 Java 基础 1. JDK 和JRE 有什么区别?

?JDK:Java Development Kit 的简称,Java 开发工具包,提供了Java 的开发环境和运行环境。 ?JRE:Java Runtime Environment 的简称,Java 运行环境,为Java 的运行提供了所需环境。 具体来说JDK 其实包含了JRE,同时还包含了编译Java 源码的编译器Javac,还包含了很多Java 程序调试和分析的工具。简单来说:如果你需要运行Java 程序,只需安装JRE 就可以了,如果你需要编写Java 程序,需要安装JDK。 2. == 和equals 的区别是什么? == 解读 对于基本类型和引用类型== 的作用效果是不同的,如下所示: ?基本类型:比较的是值是否相同; ?引用类型:比较的是引用是否相同; 代码示例: String x = "string"; String y = "string"; String z = new String("string"); System.out.println(x==y); // true System.out.println(x==z); // false System.out.println(x.equals(y)); // true System.out.println(x.equals(z)); // true 代码解读:因为x 和y 指向的是同一个引用,所以== 也是true,而new String()方法则重写开辟了内存空间,所以== 结果为false,而equals 比较的一直是值,所以结果都为true。 equals 解读

Java基础知识笔试题及答案2

1.Java中提供了名为()的包装类来包装原始字符串类型。 A.Integer B.Char C.Double D.String 2.https://www.doczj.com/doc/0a9812889.html,ng包的()方法比较两个对象是否相等,相等返回true。 A.toString()B.equals()C.compare()D.以上所有选项都不正确3.使用()方法可以获得Calendar类的实例。 A.get()B.equals()C.getTime()D.getInstance() 4.下面的集合中,()不可以存储重复元素。 A.Set B.Collection C.Map D.List 5.关于Map和List,下面说法正确的是()。 A.Map继承List B.List中可以保存Map或List C.Map和List只能保存从数据库中取出的数据 D.Map的value可以是List或Map 6.给定如下Java代码,编译运行的结果是()。 Import java.util.*; public class Test { public static void main(String[] args) { LinkedList list=new LinkedList(); list.add(“A”); list.add(2,”B”); String s=(String)list.get(1); System.out.println(s); }

A.编译时发生错误B.运行时引发异常C.正确运行,输出:A D.正确运行,输出:B ###############################################################3 3.所有异常的父类是()。 A.Error B.Throwable C.RuntimeException D.Exception 4.下列()操作不会抛出异常。 A.除数为零B.用负数索引访问数组 C.打开不存在的文件D.以上都会抛出异常 5.能单独和finally语句一起使用的块是()。 A.try B.throws C.throw D.catch 6.在多重catch块中同时使用下列类时,()异常类应该最后列出。 A.Exception B.ArrayIndexOutOfBoundsException C.NumberFormatException D.ArithmeticException 7.执行下面的代码会引发()异常。 String str=null; String strTest=new String(str); A.InvalidArgumentException B.IllegalArgumentException C.NullPointerException D.ArithmeticException 8.这段代码的输出结果是()。 try{ System.out.print(“try,“); return; } catch(Exception e){ System.out.print(“catch,“); } finally { System.out.print(“finally”);

java基础练习题

1) 以下关于Java语言说法错误的是()。(选择两项) a) Java语言是一种OO语言,Java API是Java语言的帮助文档 b) Java语言具有平台无关性-Write Once,Run Anywhere c) Java语言的核心是Java Virtual Machine d) 使用Java语言,程序员要使用原始方法分配和释放内存空间 e) Java语言是一种编译执行语言 知识点: 第一章Java语言基础Java语言基本概念 2) 以下哪一项不是Java的关键字(b)。(选择一项) a) if b) then c) goto d) case e) while 知识点: 第二章Java编程基础Java中的关键字 3) 下列(a,e)不是合法的Java语言标识符。(选择两项) a) 2variable b) variable2 c) _whatavariable d) $anothervar e) #myvar f) _3_ 知识点: 第二章Java编程基础Java中的标识符 4) 执行下列代码段后,变量x的值是(c)。(选择一项) x=9; y=9; x=(y<=x++)?1:0; a) 1 b) 2 c) 0 d) 10 知识点: 第二章Java编程基础三元运算符 5) System.out.println(4 | 7);上面语句的输出结果是(d)。(选择一项) a) 4 b) 5 c) 6 d) 7 e) 0 知识点: 第二章Java编程基础位运算符 6) 以下会产生编译错误的Java语句是(b)。(选择一项) a) if (2 == 3) System.out.println("Hi"); b) if (2 = 3) System.out.println("Hi");

《Java编程基础知识点汇总及习题集》--答案

目录 第一章Java入门2? 第二章 Java基础5? 第三章条件转移1?4 第四章循环语句20? 第五章方法 ............................................... 26 第六章数组33? 第七章面向对象........................................... 42第八章异常63? ? 第一章Java入门 知识点汇总 1、JAVA 三大体系 ?Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个 平台中最核心的部分,包含Java最核 心的类库。?JavaEE:(J2EE,Java 2 Platform, EnterpriseEdition,企业版), 开发、装配、部署企业级应用,包含 Servlet、JSP、JavaBean、JDB C、EJB、Web Service等。 ?Java ME:(J2ME,Java 2 Platfor mMicro Edition,微型版),用于 小型电子设备上的软件开发。

2、JDK,JRE,JVM的作用及关系 作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 ?path环境变量:存放可执行文件的存 放路径,路径之间用逗号隔开 ?classpath环境变量:类的运行路径,J VM在运行时通过classpath加载需 要的类 4、重点掌握两个程序 ?javac.exe:Java编译器工具,可以将 编写好的Java文件(.java)编译成 Java字节码文件(.class); ?java.exe:Java运行工具,启动Java 虚拟机进程,运行编译器生成的字节 码文件(.class) 5、一切程序运行的入口 publicstatic voidmain(String args []){ System.out.println(“Hel lo World!”); } 课堂笔记 练习题 一、填空题 1、Java的三个技术平台分别是(J2SE )、(J2EE)、(J2ME)。 2、Sun公司针对领域不同,提供了三个Java版本,其中对于个人计算机程序开发的是( J2SE ), 对于企业开发应用的是(J2EE),对于嵌入式设备应用开发的是( J2ME )。 (classpath )。 3、建立Java开发环境,安装JDK,一般需要设置环境变量(path)、 4、编写一个Java源程序,其文件名为Test.java,则编译该源程序的命令为(javac ),运行 该程序的命令为( java),生成文档注释的命令为( javadoc)。 5、Java程序的运行环境简称之为( JRE)。

Java编程基础知识点汇总及习题集答案

J a v a编程基础知识点汇总及习题集答案 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (14) 第四章循环语句 (20) 第五章方法 (26) 第六章数组 (33) 第七章面向对象 (42) 第八章异常 (63) 第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心的部分,包含Java 最核心的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、Web Service等。 Java ME:(J2ME,Java 2

Platform Micro Edition,微型版),用于小型电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 path环境变量:存放可执行文件的存放路径,路径之间 用逗号隔开 classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class); :Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class) 5、一切程序运行的入口public static void main (String args []){ World!”); } 课堂笔记

《Java编程基础知识点汇总及习题集》--答案

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (16) 第四章循环语句 (22) 第五章方法 (28) 第六章数组 (35) 第七章面向对象 (44) 第八章异常 (65)

第一章Java入门 知识点汇总 1、JAVA 三大体系 ?Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心 的部分,包含Java最核心的类库。 ?JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装 配、部署企业级应用,包含Servlet、JSP、 JavaBean、JDBC、EJB、Web Service等。 ?Java ME:(J2ME,Java 2 Platform Micro Edition,微型版),用于小型电子设备 上的软件开发。 2、JDK,JRE,JVM的作用及关系 作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 ?path环境变量:存放可执行文件的存 放路径,路径之间用逗号隔开 ?classpath环境变量:类的运行路径, JVM在运行时通过classpath加载需要 的类 4、重点掌握两个程序 ?javac.exe:Java编译器工具,可以将编 写好的Java文件(.java)编译成Java 字节码文件(.class); ?java.exe:Java运行工具,启动Java虚 拟机进程,运行编译器生成的字节码 文件(.class) 5、一切程序运行的入口 public static void main(String args []){ System.out.println(“Hello World!”); } 课堂笔记

JAVA技术--Java基础知识常见考试题JAVA技术.doc

一、单选题 1.对类:(B) public class Test( //...do something } 下面那个正确地定义了类Test的构造函数。 A)public void Test() () B)publicTest()(} C ) public static Test() (} D) publicTest(); 2.下面哪个函数是public void example()(...)的重载函数。(A) A)public void example( float f)(...) B)public int example() (...) C)public void example2()(...} D)public int example_overLoad ()(...) 3.下面的代码段中,执行之后i和j的值是_C_。 int i = 1; intj; j = i++; A)1, 1 B) 1,2 C) 2, 1 D) 2,2 4.以下for循环的执行次数是_B o for(int x=0,y=0;(y !=0)&&(x<4) ;x++); A)无限次B) 一次也不执行 C)执行4次D)执行3次 5.下面程序的输出结果是—C o public class People( String name; int id; public People( String str, int n )( name = str; id = n; } public String toString(){ return id + " :” + name; } public String print()(

java基础知识练习题

1、定义四个变量,a=’A’;b=’B’,c=’C’,d=’D’;现在编程实现a与d变量中的值交换,b与c 中的值交换。最后输出a、b、c、d中的值 class Demo1 { public static void main(String[] args) { char a = 'A',b = 'B',c = 'C',d = 'D'; char i,h; i = a; a = d; d = i; h = b; b = c; c = h; System.out.println("a="+a); System.out.println("b="+b); System.out.println("c="+c); System.out.println("d="+d); } } 2、定义一个空间,保存你的姓名。再定义一个空间保存你的性别。再定义一个空间保存你的生日。再定义一个空间保存你的年龄。最后输出: 姓名性别生日年龄 小样男 1993.8.8 15 String s = “”; class Demo2 { public static void main(String[] args) {

String name = "小样"; String sex = "男"; String birthday = "1993.8.8"; int age = 15; System.out.println("姓名:"+name); System.out.println("性别:"+sex); System.out.println("生日:"+birthday); System.out.println("年龄:"+age); } } 3、小明买了一双鞋,价值58元,买了3件衣服,每件30元,买了5个包,每个包55.8元。小明共交了500元,问还要找回多少元。用程序表达。 class Demo3 { public static void main(String[] args) { int Shoes = 58; double Bag = 55.8; double Cost = 500-Shoes-5*Bag; System.out.println("还要找回"+Cost); } }

java基础知识思考题.doc

java思考题 1、缩写JDK的含义是什么。 JDK是Java开发工具包(Java Development Kit)的缩写。它是八种用于构建在Java平台上发布的应用程序、applet和组件的开发环境。其中包括了Java编译器、JVM、大量的Java工具以及Java基础API里面是Java类库和Java的语言规范,同时Java语言的任何改进都应当加到其屮,作为后续版木发布。要成为一名程序员,JDK是一种最基木的匸具。 (JDK是Java development toolkit,相当于是Java的库函数,是编译,运行java程序的工具包。) 2、解释Java语言跨平台的技术基础。 因为Java稈序编译Z后的代码不是能被硬件系统直接运行的代码,而是一种'屮间码,,一字节码。然示不同的硬件平台上安装有不同的Java虚拟机(JVM), Ftl JVM來把字节码再“翻译”成所对应?的硬件平台能够执行的代码。因此对于Java编程者来说,不需要考虑硬件平台是什么。所以Java可以跨平台。 3、什么是Java语言的白动垃圾收集。 4、说明J2SE、J2ME、J2EE各自的含义。 J2EE是Java 2 enterprise edition是Java的一种企业版用于企业级的丿'V用服务开发 J2SE是Java 2 standard edition是Java的标准版,用于标准的应用开发 J2ME是Java 2 Micro Edition是Java的微型版,常用于手机上的开发 J2EE,J2SE,J2ME是java针对不同的的使用来提供不同的服务,也就是提供不同类型的类库。 5、Java的包是什么含义,有哪些作用。 包就是用來装不同java源文件和类文件的文件夹。 作用有两个:一个是防止重名现彖,还有一个是隐藏具体实现。 6、J2SE类库屮包含哪些主要的包(即java.*)。 lang util io awt java」ang 包 在所有的JAVA API类库屮,https://www.doczj.com/doc/0a9812889.html,ng包是最重要的,它提供了JAVA语言的核心类库, 包含了运行JAVA程序必不可少的系统类,如:基木数据类型、基木数学函数、字符串处理、线程管理和异常处理类等。运行JAVA程序时,系统会H动加载javaJang包,既这个包的加载是默认的。 java.io 包 java.io包提供了一系列用来读雳文件或其他的输入输岀流。其屮有基木输入/输出类、缓存流类、比特数组与字符串流类、数据流类、文件流类、管道类、流连接类和异常类等。java.util 包 java.util包提供了JAVA语言屮的-?些低级的实用工具,如数据结构类、日期类、随机数类、屈性类、观测类和异常类等。 java.awt 包

JAVA基础知识测试题1(姓名+班级)

1、下述那个方法(函数)的声明格式,是一个正确的Java程序入口?() A. public void main(String[] args) B. public static void main() C. private static void start(String[] mydata) D. public static final void main(String[] mydata) 2、经Java编译器编译过的二进制文件扩展名,是下述的哪一个?() A. .java B. .bytecode C. .class D. .dll 3、下述哪一个系统包,是每一个java程序中都默认引入的?() A. java.util B. https://www.doczj.com/doc/0a9812889.html,ng C. https://www.doczj.com/doc/0a9812889.html,ng D. java.system 4、下述哪一个注释,在Java程序中是错误的? A. // Add 5 to the result B. /*** TODO: Fix bug 12312 ***/ C. # Add configuration value D. /* Read file from system ****/ 5、下述关于以.java为扩展名的陈述中,哪一个是正确的? A. 该文件只能包含一个class的声明。 B. 该文件中只能包含一个Public修饰过的class的声明和一个定义的公用(public)接口(Interface)。 C. 该文件至少包含一个Public修饰过的class的声明. D. 该文件最多只能声明一个Public修饰过的class的声明. 6、下述关于import(导入)关键字的陈述中,哪一个是正确的? A. 如果该类文件包含未使用的导入语句,则该文件不会被编译。 B. 未使用的导入语句可以被删除,并不会导致文件无法编译。 C. 如果出现重复的import语句,则该文件无法编译。 D. 如果一个类中用import语句导入了另外一个类的,虽然这个类无法被找到,但该文件仍然可以被编译。 7、下述程序的执行结果是什么? 1: public class ParkRanger { 2: int birds = 10; 3: public static void main(String[] data) { 4: int trees = 5; 5: System.out.print(trees+birds);

java项目经理基本知识考试题..教案资料

一、基本知识,不定项选择(总分20分,每题2分) 1.在Java中,关于static关键字的说法错误的是: A.static可以修饰方法 B.static可以修饰成员 C.static可以修饰代码块 D.static可以修饰局部变量和形参 2.在Java中,关于final关键字的说法正确的是: A. 如果修饰局部变量,该局部变量必须在定义时赋值,且赋值后不可改变。 B. 如果修饰类,则该类只能被一个子类继承 C. 如果修饰方法,则该方法不能在子类中被覆盖 D. 如果修饰方法,则该方法所在的类不能被继承 E. 如果修饰成员变量,则该成员变量只能在声明时赋值或在构造函数中赋值,除此之外,不能在其他任何位置赋值。 F. 用static final 修饰的属性必须在声明时赋值。 3.下列哪些情况出现时一般不会导致类被加载: A. 生成该类的对象。 B. 生成其子类对象。 C. 生成其父类的对象。 D. 访问类的静态成员。 E. 声明该类的变量(引用)。 4.下列关于JVM的说法错误的是: A. JVM的栈空间用来存储方法调用时的临时变量,当调用新方法时,新方法的存储空间入栈,当方法调用结束时,方法的空间出栈。 B. JVM的堆空间是用来存储对象的空间,该空间由JVM自动管理。 C. 我们可以通过设置参数来调整JVM的栈空间和堆空间的大小。 D. 一个程序运行时,只有一个栈。 5.下列关于继承的说法正确的是: A. 子类构造函数一定会调用父类构造函数。 B. 构造函数的第一行一定是super()或this();而且,这样的调用也只能出现在构造函数的第一行。 C. 任何时候,将父类对象强制转换为其子类的对象,在编译时都能通过。 D. 如果(a instanceof A)的值为true,则a可以转换为A类型。 6.关于抽象类的说法正确的是: A. 抽象类中一定包含抽象方法,否则会出现编译错误。 B. 包含抽象方法的类一定是抽象类。 C. 抽象方法可以没有方法体,也可以有方法体。 D. 抽象类的父类也只能是抽象类。

Java基础入门_课后题答案_仅供参考

黑马面试题 1:定义map集合,并自定义对象,对map集合遍历,打出key和value值【已完成】 2:定义一个类A,类中定义一个show方法,打印一句话,在定义一个TestA类,利用反射在TestA中创建A的对象,并调用show方法 3:使用高效字符缓冲流复制文件 4:把C盘中的一个多层文件夹拷贝到D盘中。用高效的方法(要求写思路,注释,代码)5:Integer泛型Map中存储字符串 6:开启两个线程每隔一段时间分别向一个共享数组中添加元素,每个线程添加3个即可。7:Map的两种遍历方式【已完成】 8:如何用反射去创建一个对象,有2种方式,尽量用代码去体现 9:编写一个程序,把这个目录里边的所有的带.java文件都拷贝到另一个目录里边,拷贝成功以后,把后缀名是.java改成.txt 10:创建多线程的方式有几种?尽量用代码去体现 11:编写一个类,在main方法中定义一个Map对象(采用泛型),加入若干个对象,然后遍历并打印出各元素的key和value。【已完成】 12:编写程序,生成5个1至10之间的随机整数,存入一个List集合,编写方法对List 集合进行排序(自定义排序算法,禁用Collections.sort方法和TreeSet),然后遍历集合输出【已完成】 14:Collection集合下班有哪些类,哪些类又有哪些特点 List Set 15: 求1000!的结果中包含多少个0?注:1000! = 1×2×3×4×5×...×999×1000 16:编写一个类,增加一个实例方法用于打印一条字符串。并使用反射手段创建该类的对象,并调用该对象中的方法。 17:编写一个类A,增加一个实力方法showString,用于打印一条字符串,在编写一个类TestA ,作为客户端,用键盘输入一个字符串,改字符串就是类A的全名,使用反射机制创建该类的对象,并调用该对象中的方法showString 18:复制多级文件夹 19:写一个线程类MyThread,该线程实现了Runnable接口,写一个main方法,用for循环创建5个线程对象。需求如下: ①利用线程类的构造函数输出:"创建线程4"。 (备注:当创建一个线程的时候,标记为1,再次创建一个线程的时候,标记为2,所以输出的"创建线程4"就是创建的第四个线程) ②在run方法中输出:"线程X :计数Y",当执行次数达到6次的时候,退出。 (备注:其中"线程X"为第X个线程,"计数Y"为该线程的run方法执行了多少次) 20:23 9 -4 18 100 7" 要求对这串数字按照从小到大排序,生成一个数值有序的字符串。21:一个是随机生成5个1--10之间的随机数,存入list集合中,自定义排序,不能用sort 方法 22:递归删除多级文件 23:一道ArrayList集合创建添加元素并删除abc 24:取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq" ,输出格式为:a(2)b(1)k(2)... 25:有类似这样的字符串:"1.2,3.4,5.6,7.8,5.56,44.55",请按照要求,依次完成以下试题

java基础知识考试

Java基础测试题 一、选择题(每题2分) 1、在JA V A编程中,Java编译器会将java程序转换为()。 A. 字节码; B. 可执行代码; C. 机器代码; D. 以上所有选项都不正确。 2、下列那些不是合法的标识符?() A. Tel_num B. 8ABc C. Emp_1 D. b123.6 E. NULL F. Hello World 3、以下字符常量中不合法的是( )。 A. '|' B. '\'' C."\n" D.'我' 4、下列语句编译没有错误的是:() A. float a=1.5; B.byte a=129; C.byte a=5; D.byte a=(byte)200; 5、java中int数据类型在内存中表示为() A. 2个字节 B.4个字节 C. 由程序员指定 D. 以上都不正确 6、下列程序段执行后t5的结果是( )。 int t1 = 9, t2 = 11, t3=8; int t4,t5; t4 = t1 > t2 ? t1 : t2+ t1; t5 = t4 > t3 ? t4 : t3; A. 8 B.20 C.11 D.9 7、若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A. 0 B. 4 C. 8 D.–4 8、设a, b, c, d 均为int 型的变量,并已赋值,下列表达式的结果属于非逻辑值的是( ) A. a!=b & c%d < a B.a++ = =a+b+c+d C.++a*b--+d D.a+b>=c+d 9、以下代码段执行后的输出结果为() int x=3;int y=10; System.out.println(y%x); A.0 B.1 C.2 D.3 10、下列语句序列执行后,k 的值是( )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A. 31 B. 32 C. 2 D.33 11、假定有变量定义: int k=7,x=12; 则能使值为3的表达式是()。 A. x%=(k%=5) B.x%=(k-k%5) C. x%=k-k%5 D. (x%=k)-(k%=5) 12、设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是()。 A. 把x和y按从大到小排列 B. 把x和y按从小到大排列

Java基础知识及面试题

Java基础 1.什么是类?类是某一种事物的一般性的集合体,是相同的或相似的各个事物共同特性的一种抽象。 2.什么是对象?在面向对象概念中,对象是类的实例。对象与类的关系就像变量与数据类型的关系一样。 3.类的核心特性 封装性:类的封装性为类的成员提供公有的、缺省的、保护的、私有的等多级访问权限。目的是隐藏类中的私有变量和类中方法的实现细节。 继承性:类的继承性提供从已存在的类创建新类的机制,继承使一个新类自动拥有被继承类的全部可继承的成员。 多态性:类的多态性提供类中方法执行的多样性,有两种表现形式:重载和覆盖。 4.方法:对象中方法表达了对象所具有的行为。 5.属性:一个对象的属性是能够被外界或对象所处的环境所感知或操纵的数据或状态。 6.什么是Java?Java是一门易于编程的跨平台编程语言,同时又是一个开发、应用、执行和部署的平台。 7.为什么要有Java?Java与平台无关、一次编译处处运行、以及他的易于编程的特性。 8.Java开发程序的步骤?编写源代码(2)编译(3)执行 9.Java的环境变量 1)JA V A –HOME jdk的安装路径 2)CLASSPA TH jvm转载class字节码文件时的搜索路径 3)PA TH 是系统的环境变量、命令的搜索路径 10.JVM :Java Virtual Machine 是一个逻辑的操作系统、它屏蔽了硬件和平台的信息、jvm能将字节码文件解释并执行、 正是这种独立执行的方式是Java 具有与平台无关的特性。 11.类的加载过程:类加载器加载字节码文件到内存、jvm内存数据区将对象状态放置在堆区、各线程使用的变量放在栈区、 类的特征放在方法区、然后进行字节码验证再执行。 12.常用的Java命令:Javac、java、javadoc、jar 13.类的语法与规范 一个源文件只能有一个public的类 Public源文件可以有多个类定义 源文件名必须与public类名保持一致 包名必须放在第一行 包名可以有0个或1个但不能有多个 源文件如果带包的话最好存放在包结构对应的目录下 标识符程序语言用于标识变量名类名方法名的字符串就是标识符。 标识符必须字母下划线美元符开头大小写敏感。 类名要求首字母大写 方法名首字母小写每个单词首字母大写 常量名所有字母大写如果有两个或几个字母的联合用下划线连接 关键字:程序语言中、程序已经所有用户不能再使用的单词一般关键字都是小写 14 .数据类型:基本数据类型: 整型(byte、short、int、long)默认是int 浮点型(float、double)、默认是double 布尔型(boolean)、 字符型(char) 引用类型:类、接口、数组 15 .main()方法执行过程 1)先到方法区搜索student、如果搜索不到则去加载student的字节码文件 2)通过classpath查找对应的student字节码文件找不到就返回错误(ClassNotFound) 3)将字节码文件的二进制数据转换为class对象放置于方法区( class对象描述了student类的方法特征及静态成员等)加载完成 4)验证字节码文件 5)在堆区中划分空间放置student对象

《Java编程基础知识点汇总及习题集》--答案

目录 第一章 Java入门............................. 错误!未定义书签。第二章 Java基础............................. 错误!未定义书签。第三章条件转移.............................. 错误!未定义书签。第四章循环语句.............................. 错误!未定义书签。第五章方法 ................................. 错误!未定义书签。第六章数组 ................................. 错误!未定义书签。第七章面向对象.............................. 错误!未定义书签。第八章异常 ................................. 错误!未定义书签。

第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平 台中最核心的部分,包含Java最核心 的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、 装配、部署企业级应用,包含Servlet、 JSP、JavaBean、JDBC、EJB、Web Service 等。 Java ME:(J2ME,Java 2 Platform Micro Edition,微型版),用于小型 电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系 作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库3、JDK环境变量配置 path环境变量:存放可执行文件的存 放路径,路径之间用逗号隔开 classpath环境变量:类的运行路径, JVM在运行时通过classpath加载需要 的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的 Java文件(.java)编译成Java字节 码文件(.class); :Java运行工具,启动Java虚拟机进 程,运行编译器生成的字节码文件 (.class) 5、一切程序运行的入口 public static void main(String args []){ World!”); } 课堂笔记

JAVA基础知识练习题1答案

一、选择题 1、下列变量定义错误的是。 A)int a;B)double b=4.5;C)boolean b=true;D)float f=9.8;(float f=9.8f) 2、下列数据类型的精度由高到低的顺序是: a)float,double,int,long b)double,float,int,byte c)byte,long,double,float d)double,int,float,long 3、6+5%3+2的值是__________ A)2B)1C)9D)10 4、下面的逻辑表达式中合法的是__________ A)(7+8)&&(9-5)B)(9*5)||(9*7)C)9>6&&8<10D)(9%4)&&(8*3) 5、假设int a=3,b=2,c=1,以下语句正确的是___________。 A)c=c/float(a//b)b)c=c/((float a)/b) c)c=(float)c/(a/b)d)c=c/(int)(a/(float)b) 6、指出下列正确的语句: A)byte i=389;(超出字节型范围) B)long lv=i*3+4.5;(long是整型) C)int x=87L;(定义错误,去掉L)

D)long l=10; 7、指出下列类型转换中正确的是______________。 A)int i=’A’B)long L=8.4f(8.4后面加L)C)int i=(boolean)8.9D)int i=8.3(不是整型) 8、以下的选项中能正确表示Java语言中的一个整型常量的是()。 A)12.B)-20C)1,000D)456 9、以下选项中,合法的赋值语句是()。 A)a==1;B)++i; C)a=a+1=5;D)y=int(i); 10、以下的变量定义语句中,合法的是()。 A)float$_*5= 3.4F;B)byte b1=15678; C)double a=10000; D)int_abc_=3721L; 11、以下字符常量中不合法的是()。 A)'|'B)'\'C)"\n"D)'我' 12、若所用变量都已正确定义,以下选项中,非法的表达式是()。 A)a!=4||b==1B)'a'%3 C)'a'=1/2D)'A'+32 13、对于一个三位的正整数n,取出它的十位数字k(k为整型)

Java基础知识习题

2016java基础知识习题 勤能补拙是良训,一分辛劳一分才。以下是整理的2016基础知识习题,欢迎学习! 一、选择题(每题1分,共30分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0] 7.下列语句序列执行后,ch1 的值是( )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1;

A) ‘A' B) ‘B' C) ‘C' D) B 8.下列语句序列执行后,i 的值是( )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是( )。 A) x > y || x > z B) x != y C) z > ( y + x ) D) x < y & ! ( x < z ) 12.下列语句序列执行后,i的值是( )。 int i=16; do { i/=2; } while( i > 3 ); A) 16 B) 8 C) 4 D) 2 13.以下由 for 语句构成的循环执行的次数是( )。

Java基础知识面试题目

Java基础知识面试题目 一些著名的大公司面试题目往往很基础. 一、Java基础知识 1. Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。Integer literals,Floating-point literals,character literals,Boolean literal,String iteral. String 不是基本数据类型 2. 字符串的操作: 写一个方法,实现字符串的反转,如:输入abc,输出cba public static String reverse(String s){ int length=s.length(); StringBuffer result=new StringBuffer(length); for(int i=length-1;i>=0;i--) result.append(s.charAt(i)); return result.toString(); } 写一个方法,实现字符串的替换,如:输入bbbwlirbbb,输出bbbhhtccc。 3. 数据类型之间的转换 如何将数值型字符转换为数字(Integer,Double) 如何将数字转换为字符 如何去小数点前两位,并四舍五入。 4. 日期和时间 如何取得年月日,小时分秒 Date dat=new Date(); dat.getY ear();dat.getMonth();dat.getDay();dat.getHours();... 如何取得从1970年到现在的毫秒数 long now=dat.getTime(); 如何获取某个日期是当月的最后一天 如何格式化日期 DateFormate df=DateFormate.getInstance(); df.Format(dat); 5. 数组和集合 6. 文件和目录(I/O)操作 如何列出某个目录下的所有文件 如何列出某个目录下的所有子目录 判断一个文件或目录是否存在 如何读写文件

相关主题
文本预览
相关文档 最新文档