本文目录一览:
请高手帮忙解决一些JAVA试题
《Java程序设计》期未考试复习题
一.填空
1.在一个java源程序中定义了3个类和15个方法,编译该Java源文件时,会产生个字节码文件,其扩展名是class。
2.创建类的关键字是public class.
3. 类包声明的关键字是package.
4.引用类包的关键字是import.
5.声明接口的关键字是interface.
6.继承的关键字是extends.
7.返回变量的值的关键字是return.
8.声明虚拟类的关键字是abstract.
9.在Java语言中,逻辑常量只有true false两个值。
10.i为整型变量且赋值为11,表达式
int a=i++;
则a的值为12。
11.面向对象的软件开发方法用把数据和基于数据的操作封装在一起。
12.构造方法的方法名必须与类名相同。
13.如果子类中的某个方法的名字、和与它的父类中的某个方法完全一样,则称子类中的这个方法覆盖了父类的同名方法。
14.同一个类中多个方法具有相同的方法名,不同的,称为方法的重载。
15.Java异常处理中可能够抛出异常的代码是放在try块中,处理代码是放在catch块中。
java基础面试题有哪些?
下面是10道java基础面试题,后附答案
1.什么是 Java 虚拟机?为什么 Java 被称作是“平台无关的编程语言”?
Java 虚拟机是一个可以执行 Java 字节码的虚拟机进程。Java 源文件被编译成能被 Java 虚拟机执行的字节码文件。
Java 被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。Java 虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。
2.“static”关键字是什么意思?Java 中是否可以覆盖(override)一个 private 或者是static 的方法?
“static”关键字表明一个成员变量或者是成员方法可以在没有所属的类的实例变量的情况下被访问。
Java 中 static 方法不能被覆盖,因为方法覆盖是基于运行时动态绑定的,而 static 方法是编译时静态绑定的。static 方法跟类的任何实例都不相关,所以概念上不适用。
3.JDK 和 JRE 的区别是什么?
Java 运行时环境(JRE)是将要执行 Java 程序的 Java 虚拟机。它同时也包含了执行 applet 需要的浏览器插件。Java 开发工具包 (JDK)是完整的 Java 软件开发包,包含了 JRE,编译器和其他的工具(比如:JavaDoc,Java 调试器),可以让开发者开发、编译、执行 Java 应用程序。
4.是否可以在 static 环境中访问非 static 变量?
static 变量在 Java 中是属于类的,它在所有的实例中的值是一样的。当类被 Java 虚拟机载入的时候,会对 static 变量进行初始化。如果你的代码尝试不用实例来访问非 static 的变量,编译器会报错,因为这些变量还没有被创建出来,还没有跟任何实例关联上。
5.Java 支持的数据类型有哪些?什么是自动拆装箱?
Java 语言支持的 8 中基本数据类型是:
byte
short
int
long
float
double
boolean
char
自动装箱是 Java 编译器在基本数据类型和对应的对象包装类型之间做的一个转化。比如:把 int 转化成 Integer,double 转化成 double,等等。反之就是自动拆箱。
6.Java 支持多继承么?
不支持,Java 不支持多继承。每个类都只能继承一个类,但是可以实现多个接口。
7.Java 中,什么是构造函数?什么是构造函数重载?什么是复制构造函数?
当新对象被创建的时候,构造函数会被调用。每一个类都有构造函数。在程序员没有给类提供构造函数的情况下,Java 编译器会为这个类创建一个默认的构造函数。
Java 中构造函数重载和方法重载很相似。可以为一个类创建多个构造函数。每一个构造函数必须有它自己唯一的参数列表。
Java 不支持像 C++中那样的复制构造函数,这个不同点是因为如果你不自己写构造函数的情况下,Java 不会创建默认的复制构造函数。
8.Java 中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思?
Java 中的方法重载发生在同一个类里面两个或者是多个方法的方法名相同但是参数不同的情况。与此相对,方法覆盖是说子类重新定义了父类的方法。方法覆盖必须有相同的方法名,参数列表和返回类型。覆盖者可能不会限制它所覆盖的方法的访问。
9.接口和抽象类的区别是什么?
Java 提供和支持创建抽象类和接口。它们的实现有共同点,不同点在于:
接口中所有的方法隐含的都是抽象的。而抽象类则可以同时包含抽象和非抽象的方法。
类可以实现很多个接口,但是只能继承一个抽象类
类如果要实现一个接口,它必须要实现接口声明的所有方法。但是,类可以不实现抽象类声明的所有方法,当然,在这种情况下,类也必须得声明成是抽象的。
抽象类可以在不提供接口方法实现的情况下实现接口。
Java 接口中声明的变量默认都是 final 的。抽象类可以包含非 final 的变量。
Java 接口中的成员函数默认是 public 的。抽象类的成员函数可以是 private, protected 或者是 public。
接口是绝对抽象的,不可以被实例化。抽象类也不可以被实例化,但是,如果它包含 main 方法的话是可以被调用的。
10.什么是值传递和引用传递?
对象被值传递,意味着传递了对象的一个副本。因此,就算是改变了对象副本,也不会影响源对象的值。
对象被引用传递,意味着传递的并不是实际的对象,而是对象的引用。因此,外部对引用对象所做的改变会反映到所有的对象上。
最后祝你面试顺利!
简单的JAVA 面试题
import java.util.Scanner;
public class OODemo {
private double price1 = 1.5;//金卡会员价格
private double price2 = 1.8;//银卡会员价格
private double price3 = 2.0;//普通客户价格
/**
* 根据buyer的购物数和会员级别计算total金额
* @param num
* @param card
* @return
*/
public double countPrice(int num,String card)
{
double total = 0.0;
if(card.equals("1"))
{
total = price1*num;
}
else if(card.equals("2"))
{
total = price2*num;
}
else if(card.equals("3"))
{
total = price3*num;
}else{
System.out.println("无效的选择!");
}
return total;
}
public void method()
{
Scanner s = new Scanner(System.in);
System.out.println("Please input a cardDept num to get your totalPrice:");
System.out.println("------------------------------------------------");
System.out.println("1----金卡会员");
System.out.println("2----银卡会员");
System.out.println("3----普通会员");
System.out.println("4----Exit");
String card = s.next();
if(card.equals("1")||card.equals("2")||card.equals("3"))
{
System.out.println("该会员等级为"+card);
System.out.println("请输入购买数:num");
int num = s.nextInt();
double total = countPrice(num, card);
System.out.println("总计金额为:"+total);
}else if(card.equals("4"))
{
System.out.println("Exit...");
System.exit(0);
}else{
System.out.println("无效的会员等级!");
System.out.println("重新输入:");
method();
}
}
public static void main(String[] args) {
OODemo demo = new OODemo();
demo.method();
}
}
java简单试题
4、对象的使用包括引用对象的成员变量和方法。通过_对象_点___属性_运算符就能实现对对象成员变量的访问和对象方法的调用。
5、在Java中有一种叫作_构造方法____________特殊方法,我们在程序中用它来对类的对象成员进行初始化。
6、用static修饰的方法,称为静态方法。它们不是对象的方法,而是整个类的方法。静态方法只能处理用关键字___static_____修饰的数据。
7、表达式1/2*3的计算结果是______0__。
8、在Java程序中,通过类的定义只能实现___单_____重继承,但通过接口的定义可以实现____多____重继承关系。
9、在Java语言中,逻辑常量只有true 和 _____false______ 两个值。
10、Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和 _double________两种具体类型。
11、else子句不能单独作为语句使用,它必须和if子句配对使用,那么else 子句的配对原则是:else子句总是与离它___最近_____的if子句配对使用。
12、向对象的语言将客观世界都看成由各种对象组成,共同特征和行为的对象组成类, 类是变量和___方法_____的集合体。
13、RandomAccessFile所实现的接口是 DataInput、 Closeable____接口和DataOutput 接口。
14、创建包的语句应该放在程序的位置为___文件的第一句________。
15、字符类输出流的各个类都是抽象类___java.io.Reader______的子类。
JAVA面试试题,我是初学者下面的题都不会,请大家帮我做做,谢谢了感激不尽!
19:1;
20:java代码生成生成中间代码,通过java虚拟机来执行;
21:没有指针,垃圾回收,异常处理;
22:接口里可以定义属性,但必须是常量。修饰符为:interface;
23:数组里没有length()这个方法,String中有length()这个方法;
24:标识符就是常量、变量、函数自定义的名称。Java标识符由数字、字母、下划线、$组成。首位不能是数字,Java关键字不能当作Java标识符。
25:两个if需要执行两次逻辑判定。一个if判定一次,且与else是互补的关系。
26:public static void main(String args[])
{
}
args可以变。