Java基础知识考点Java开卷考试.docx
- 文档编号:30260316
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:11
- 大小:19.37KB
Java基础知识考点Java开卷考试.docx
《Java基础知识考点Java开卷考试.docx》由会员分享,可在线阅读,更多相关《Java基础知识考点Java开卷考试.docx(11页珍藏版)》请在冰豆网上搜索。
Java基础知识考点Java开卷考试
开卷考试,共2个小时,要求卷面整洁,书写清晰。
一判断题10分,每题1分
在编程时编写过多的注释,会使编译之后生成的程序文件变大。
(错)
放心,编译器会删除所有的注释。
所以,哪怕你在程序中写了一部长篇小说,也不会拖慢程序的运行速度。
一个Java源文件中只能定义一个公有类,并且类名必须与文件名一致。
(对)
.通过在程序中引入“import.*;”语句,就可以使用包中的所有类(包括其嵌套的子包中的类)。
(错)
要使用嵌套子包中的类,必须再次添加import子句
J2SE的功能是J2ME的一个子集。
(错)
Java规定所有的方法都必须放到某个类中,不存在独立于类的方法。
(对)
java中所有类是类的子类(对)
Swing是一套GUI组件,采用了新的思路设计Java应用程序的界面,它完全地替换掉了原有的AWT。
(错)
Swing仍然使用AWT的事件模型,并非完全抛弃。
值得注意的NetBeans完成最新的更新组件后,创建Java桌面应用程序时,有了一个新的提示消息框:
二简答题40分,每题5分,共8个小题。
现代编程语言有两种主要的类型:
一种是“编译型”的,比如C,程序源码必须经过编译才能运行;另一种是“解释型”的,这种类型的语言(比如早期的Basic)通常都拥有一个交互环境,用户输入一句代码计算机就执行一句代码。
Java属于上述哪种类型如果你认为Java不属于上述任何一种类型,那么它是不是一种新的编程语言类型
Java源程序需要编译,但运行时需要即时“解释”为本地CPU能执行的机器指令,所以它不属于“纯”的编译型或解释型,而是一种混合类型。
Java中有两个关键字:
void和null,它们有什么区别
void是无类型,null是空值,一个是对返回类型来说,一个对值来说的。
Void表示这个方法执行结束后不返回任何值。
void :
Public void sort();表示方法没有返回值
Null 表示一个对象为null,就是没有分配内存,没有初始化。
3. 简述“类(Class)”、“类库(ClassLibrary)”、“包(Package)”、“ Jar 文件”这四个概念间的联系。
类库其实是一个“统称”,它是类的集合。
包则是类库的组织形式,它类似于C++中的namespace,可以解决类的同名问题。
Jar则是一个采用Zip格式压缩的文件包 ,主要是为了方便Java组件的复用,简化Java应用程序的部署和发布。
Jar包中可以保存任意类型的多个文件和多级嵌套的文件夹。
比如JDK就包容了不少Jar压缩包,你可以使用解压缩工具(比如WinRAR)去查看它的内容。
可以把Jar文件看成是Java类库的一个物理“载体”,之所以称其为“物理”的,是因为我们可以在计算机中直接“看见”并“操作”它。
在一个很大的循环(比如循环100000次)中,如果需要进行大量字符串的连接操作,通常人们会使用StringBuffer(或StringBuilder)而不是String类型,请解释这么做的理由。
StringBuffer可存放允许修改的字符串,String对一串字符进行操作,不可变类。
StringBuffer内部结构是数组,字符可以动态改变,String是final类型,不可改变。
因为String的对象是不能修改的,进行加操作,会产生新的对象,在很大的循环中这样做会浪费内存空间。
而StringBuffer是对同一个内存对象,进行修改,节省内存,增加效率。
现有两个长度不同的数组:
int[]arr1=newint[10];
int[]arr2=newint[100];
那么以下语句能通过编译吗
arr1=arr2;
如果你认为可以通过编译,得到这个结论的依据是什么如果不能通过编译,你认为其原因是什么
可以。
因为哪怕是基本类型的数组,数组本身也是引用的,用=号时,只是将一个数组的地址,指向另一个,并不是进行复制。
请看以下代码:
doubled1=;
doubled2=1001/10;
==d2);写一个程序,用户输入任何一个字符串之后,反转输出其结果。
其运行结果如下所示:
请输入一个字串:
我在学习Java程序设计,您输入了:
计设序程avaJ习学在我
packagefei;
publicclassfanchuan{
publicstaticvoidmain(String[]args){
Strings="计设序程avaJ习学在我";
chararray[]=();
for(inti=;i>=0;i--){
}}}
packagefei;
importclassFanchuan2{
publicstaticvoidmain(String[]args){
Scannersc=newScanner;packagefei;
publicclassZuoye2{
publicstaticint[]getRandomizeNumbers(intbegin,intend,intcount){
int[]a=null;
a=newint[count];
for(inti=0;i a[i]=begin+(int)()*(end-begin)); } returna; } publicstaticvoidmain(String[]args){ }} (2)编写一个方法,它接收一个int数组作为参数,外界只需调用一次这个方法,可以马上得到这个数组的最大值、最小值和平均值信息。 classArrayInfo { publicintmax=0; publicintmin=0; publicdoubleaverage=0; } 定义好了ArrayInfo类后,此方法就很容易编写了: publicstaticArrayInfogetArrayInfo(int[]arr){ ArrayInfoobj=newArrayInfo(); intsum=0; ==arr[0]; for(intvalue: arr){ if(value>{ =value; } if(value<{ =value; } sum+=value; } =(double)sum/; returnobj; } (4)数学中,一个复数包容着一个实部(Real)和一个虚部(Imaginary)。 请设计一个Complex类,它的实例代表一个复数,并且用户可以这样使用它: 用Java编程实现上述3个类。 (15分) 2. 在main()方法内书写以下测试代码: (5分) (1) 创建一个Library类的实例myLittleLibrary,其中预存有以下3本书: Java程序设计,张三著,45元 Java核心技术,李四著,50元 Java程序设计,王五著,38元 (2) 显示图书馆中所有图书的信息,输出样例如下: Java程序设计,张三著,45元,可借 Java核心技术,李四著,50元,可借 Java程序设计,王五著,38元,未还 (3) 创建一个Reader类的实例oneBeautifulGirl,她先在myLittleLibrary中查找《Java程序设计》 (4) oneBeautifulGirl借了张三著的那一本书。 现在显示图书馆中所有图书的信息. (5) oneBeautifulGirl把书还了,再次显示图书馆中图书信息。 package图书管理系统; importclassTestBook{howBookInfo(); } voidGetAllBook(Library[]left){ for(inti=0;i<1;i++){howBookInfo(); } } voidBorrowBook(Library[]all,Library[]left){um)){ all[i].showBookInfo(); break; } } "你要借吗请输入1,表示借。 "); intj; j=(); if(j==1){ "借阅成功"); left[score]=all[i]; score+=1; } if(score<2){ "您还可以借阅"+(1-score)+"本"); }else{ "对不起,一个人只能借1本");}} voidReturnBook(Library[]all,Library[]left){um){ for(intj=0;j<1;j++){ if(left[j]==all[i]){ left[j]=null; "还书成功"); }}}}}} package练习; import.*; import.*; publicclassCalButtons{ @SuppressWarnings("serial") classCalButtonPaneextendsJPanelimplementsActionListener{ String[]keys={"7","8","9","/","4","5","6", "*","1","2","3","-","0",".","=","+"}; JButton[]keyb=newJButton[]; JTextFieldt; JButtonclear; doublesum=0,num; inti=0; intj=0,l,action; Stringshow=""; CalButtonPane(JTextFieldt){ super(newGridLayout(6,6,8,8)); =t; for(inti=0;i<;i++){ keyb[i]=newJButton(keys[i]); keyb[i].addActionListener(this); (keyb[i]); } clear=newJButton("Clear"); (this); keyb[0].addActionListener(this); } classCalculatorextendsJFrame{ JPanelp; JTextFieldt; CalButtonPanecp; publicCalculator(){ super("Java计算器"); setDefaultCloseOperation(EXIT_ON_CLOSE); calInit(); Containercc=getContentPane(); (newBorderLayout()); (t,"North"); (cp,"Center"); "South"); (300,200); (); (false); (true); } voidcalInit(){ t=newJTextField(""); ; cp=newCalButtonPane(t); }} publicvoidactionPerformed(ActionEvente){ JButtono=(JButton)(); "Btn被点击了"); if()==keyb[0]){ { if().indexOf(".")==-1) ()+c); } elseif(c=='C'){ i=0;j=0;sum=0;action=0; ("0"); } else{ if(i==0)(""); ()+c); i++; } } } publicstaticvoidmain(String[]agrs){ newCalculator(); } } /*假如有500个小孩,手拉手拉成一圈,从其中一个小朋友开始一次编号为1-500, 从1号小朋友开始循环1到3报数,数到3的小朋友退出,编写一个java应用程序,计算出 最后一个小朋友的号码是多少 */ publicclassCount3Quit{ publicstaticvoidmain(String[]args){ boolean[]arr=newboolean[500]; for(inti=0;i<;i++){ arr[i]=true; } intleftCount=; intcountNum=0; intindex=0; while(leftCount>1){ if(arr[index]==true){ countNum++; if(countNum==3){ countNum=0; arr[index]=false; leftCount--;}} index++; if(index=={ index=0;}} for(inti=0;i<;i++){ if(arr[i]==true){ } }}}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 基础知识 考点 开卷 考试