java答题
1. java考试简答题
1 Java的特点 Java是一个广泛使用的网络编程语言 ,它是一种新的计算概念。首先 ,作为一种程序设计语言 ,它简单、面向对象、不依赖于机器的结构、具有可移植性、鲁棒性、安全性、并且提供了并发的机制、具有很高的性能。其次 ,它最大限度地利用了网络 ,Java的小应用程序 (applet)可在网络上传输而不受 CPU和环境的限制。另外 ,Java还提供了丰富的类库 ,使程序设计者可以很方便地建立自己的系统。
2.对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
对象的状态和行为。
对象具有状态,一个对象用数据值来描述它的状态。
对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中
类:具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
3:特点:
(1)对象唯一性。
每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。
(2)分类性。
分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。
(3)继承性。
继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。
在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承。
在类层次中,子类继承了多个父类的数据结构和方法,则称为多重继承。
在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。
采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。
(4)多态性(多形性)
多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。
多态性允许每个对象以适合自身的方式去响应共同的消息。
多态性增强了软件的灵活性和重用性。
4:封装性(信息隐藏)。
封装性是保证软件部件具有优良的模块性的基础。
面向对象的类是封装良好的模块,类定义将其说明(用户可见的外部接口)与实现(用户不可见的内部实现)显式地分开,其内部实现按其具体定义的作用域提供保护。
对象是封装的最基本单位。封装防止了程序相互依赖性而带来的变动影响。面向对象的封装比传统语言的封装更为清晰、更为有力。
5: 继承是指一个对象直接使用另一对象的属性和方法。java语言中不支持多重继承,是通过接口实现多重继承的功能。如果一个类A继承自另一个类B,就把这个A称为"B的子类",而把B称为"A的父类"。继承可以使得子类具有父类的各种属性和方法,而不需要再次编写相同的代码。在令子类继承父类的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类的原有属性和方法,使其获得与父类不同的功能。
6:多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作
7:
权限名称 自己 包内 包外子类 包外非子类
public 是 是 是 是
protected 是 是 是 否
default(默认)是 是 否 否
private 是 否 否 否
8:Java中有final关键字,修饰类、方法或变量
final类不能被继承
final方法不能被子类覆盖
final变量就是常量
好辛苦,下次再补充
2. java程序编写答题器
package test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
public class AnswerLibTest {
private String anserFilePath;
private BufferedReader bReader;
public AnswerLibTest(String anserFilePath){
this.anserFilePath = anserFilePath;
}
private void openAnswerFile()throws Exception{
File f = new File(anserFilePath);
bReader = new BufferedReader(new FileReader(f));
}
private void closeAnswerFile()throws Exception{
if(bReader!=null){
bReader.close();
bReader = null;
}
}
public String searchAnswer(String keyword)throws Exception{
try{
openAnswerFile();
String line = null;
while( (line=bReader.readLine())!=null ){
if(line.indexOf(keyword)>-1){
return bReader.readLine();
}
}
return null;
}finally{
closeAnswerFile();
}
}
/**
* @param args
*/
public static void main(String[] args) throws Exception{
AnswerLibTest test = new AnswerLibTest("e:/answer.txt");
String r = test.searchAnswer("rec");
System.out.println( r );
}
}
简单写了个例子,你再修改修改
3. java考试系统,答题的时候 有两个按钮,上一题和 下一题 ,
显示数目
select rownum(*) from 题目表
显示上题,现在这题,下题
跟分页有点像
根据传入的题号得到上题和下题
select * from 题目表 where between 题目编号=假设为5 and 题目编号=7
4. 在编写java时如何完成问答式互动
可以使用Scanner 进行系统的输入,使用循环进行一直运行,输入便可得到回到,按指定键即可退出。下面是一个例子:
import java.util.*;
/*
实现简易的词典,console输入英文,查询出对应的中文释义,输入exist则退出查询命令。
*/
class Demo9
{
public static void main(String[] args){
//String s;
//String str = new String(s);
}
public void zidian(){
Map<String ,String> map = new HashMap<String,String>();
map.put("apple","苹果");
map.put("orange","橘子");
map.put("banana","香蕉");
while(true){
Scanner s = new Scanner(System.in);
System.out.println("请输入要查询的单词");
String str = s.nextLine();
if(str.equals("exist")){
System.out.println("退出查询!!!");
break;
}else{
if(str.length()<=0){
System.out.println("请输入要查询的单词");
}else{
String value = map.get(str);
if(value!=null){
System.out.println(str+"的中文翻译为:"+value);
}else{
System.out.println("次单词暂无中文释义.");
}
}
}
}
}
}
望点赞。
5. 答题,java语言程序设计答题
1,break结束循环,continue进行下一次循环
2,继承就是一个类拥有另一个类的所有方法和属性,并且可以直接访问
3,int,double,string,bool,byte,float,…
4,常量,一旦初始化就不能更改;抽象,提供定义,但不实现,实现过程由子类完成;静态,包含此关键字的变量,方法可以直接使用类名访问
5,多线程是在同一个进程当中处理不同的事情;多任务可以跨进程完成不同的工作,相同点就是都可以分工完成同一件事情
6. java问答
1简单地说Java的跨平台性就是指,编译后的Java程序可直接在不同的平台上运行而不用重新编译,这一特性使得Java随着Web应用的普及而迅速普及起来。而Java的跨平台性是如何实现的呢?这就要理解Java虚拟机和字节码的概念。
实际上,编译后的Java代码并不是传统的二进制代码(如Windows下的.exe文件),而是Java字节码,这种字节码文件是不能直接在操作系统上执行的。要想在一个操作系统上运行一个Java程序必须有一个中间环节来负责将Java字节码解释成二进制码,这个中间环节就是Java虚拟机(简称JVM)。由于目前大多数操作系统已经实现了JVM,所以Java轻松实现跨平台性。
2方法覆盖要求参数签名必须一致,而方法重载要求参数签名必须不一致。
· 方法覆盖要求返回类型必须一致,而方法重载对此不做限制。
·方法覆盖只能用于子类覆盖父类的方法,方法重载用于同一个类的所有方法(包括从父类中继承而来的方法)。
·方法覆盖对方法的访问权限和抛出的异常有特殊的要求,而方法重载在这方面没有任何限制。
·父类的一个方法只能被子类覆盖一次,而一个方法在所在的类中可以被重载多次
3 我们把用于完成特定功能的若干属性组织成相对独立的属性集合。这种属性的集合就是接口。
定义接口与定义类非常相似。实际上完全可以把接口理解成为一种特殊的类,接口是由常量和抽象方法组成的特殊类。一个类只能由一个父类,但是它可以同时实现若干个接口。这种情况下如果把接口理解成特殊的类,那么这个类利用接口实际上就获得了多个父类,即实现了多重继承。与类定义相仿,声明接口时也需要给出访问控制符,不同的是接口的访问控制符只有public一个。用public修饰的接口是公共接口,可以被所有的类和接口使用,而没有public修饰符的接口则只能被同一个包中的其他类和接口利用。接口也具有继承性。定义一个接口是可以通过extends关键字声明该新接口是某个已经存在的父接口的派生接口,它将继承父接口的所有属性和方法。与类的继承不同的是一个接口可以有一个以上的父接口,它们之间用逗号分隔,形成父接口列表。新接口将继承所有父接口中的属性和方法。
4 public class Main{
public static void main(String []args)
{
for(int i=1; i<=100; i++)
{
if(i%3==0&&i%5!=0&&i%9!=0)
System.out.println(i);
}
}
}
5 public class Main{
public static void main(String []args)
{
for(int i=1; i<=5; i++)
{
for(int j=0; j<i; j++)
System.out.print("*");
System.out.println();
}
}
}
7. java答题程序debug
像类似上面的问题,就是应该使用程序设计中重要知识点“递归应用”来编程求解,作为新手应该好好去了解了解。下面我给出递归程序解法,
publicstaticvoidmain(String[]args){
intmoney=10;//当前多少钱
intkongPing=money/2;//算出空瓶
intpingGai=kongPing;//算出瓶盖
System.out.println(kongPing+getNum(kongPing,pingGai));//将空瓶、瓶盖拿去兑换
}
//兑换的方法
publicstaticintgetNum(intkongPing,intpingGai){//kongPing表示空瓶,pingGai表示瓶盖
intsum=0;
sum+=(kongPing/2);//每2个空瓶换1瓶
sum+=(pingGai/4);//每4个瓶盖换1瓶
if(kongPing>=2||pingGai>=4)//当空瓶多于2个或瓶盖多于4个则可以继续兑换
returnsum+getNum(sum+kongPing%2,sum+pingGai/4);
else
return0;
}
8. JAVA答题
A 参数不同或者参数的类型不同即可
D 对象的上传型对象调用重写的方法
A 转换字符串使用
C k应该先给k赋值
A 应该是Runnable
C 因为f
B 传的是引用可以被改变赋值,但传递的是地址的实体就不行了
AB 高级别的赋值给低级别的要加强制转换
AC 字母数字下划线或美元符,数字不能打头
AC 数组储存同一种功能,且下标一般为int型
9. 几个JAVA的问答题 请教大家
8.D
if (c=='0') {throw new MyException();} 抛出了一个自定义的异常。
所以输出 this 的那个语句不执行。
catch 到 MyException 输出:that
9. BC ,E, F, F.
接口 的 成员变量默认都是 public static final ,必须要初始化,所以A错误。B正确;方法都是抽象方法,所以C正确
一个类只继承一个父类。实现多个接口。
10.B
结果:
The String No.1 is
The String No.2 is String 2
The String No.3 is string
附:API 中的此方法很清楚、
String
public String(char[] value,
int offset,
int count)分配一个新的 String,它包含来自该字符数组参数的一个子数组的字符。offset 参数是子数组第一个字符的索引,count 参数指定子数组的长度。该子数组的内容已被复制;后续对字符数组的修改不会影响新创建的字符串。
参数:
value - 作为字符源的数组。
offset - 初始偏移量。
count - 长度。
抛出:
IndexOutOfBoundsException - 如果 offset 和 count 参数索引字符超出 value 数组的范围。
10. java问答题
错在子类没有必要去导入父类这个类
import test.FatherClass;这行删掉就行了
public声明在同一个包下是自动能识别的