java基础周考要点

java基础周考要点
java基础周考要点

Java基础周测

总分:100分时间:150分钟

姓名:____________________ 得分:__________________

一.选择题(42’)

1.在Java中,程序入口的main方法书写正确的是();

A、public void main(String[] args)

B、public static void main(String[] args)

C、public static int main(String args[])

D、public static void main(String args[])

2.在开发java程序时,源程序经过编译器的编译,输出的一个扩展名为()的文件;

A、.doc

B、.txt

C、.ppt

D、.class

3.以下那个选项不是我们java技术平台的内容();

A、javaEE

B、javaSE

C、javaHe

D、javaMe

4.在我们java程序中转义字符“\t”代表();

A.换行

B.缩进一个tab键的距离

C.缩进一个空格的距离

D.代表字母t

5.在我们Java程序中转义字符“\n”代表();

A.缩进一个tab键的距离

B.缩进一个空格的距离

C.换行

D.代表字母n

6.在Java程序应用中,使用()数据类型表示事物的真假;

A.int

B.String

C.char

D.boolean

7.分析以下代码程序,该段代码程序的运行结果是();

public class HelloAccp{

public static void main(String args[]){

String HELLO;

System.out.print(HELLO);

System.out.print(“ACCP!”);

}

}

A.HELLO

ACCP!

B.变量使用前未赋值,存在编译出错

C.main()方法修饰符错误,无法通过编译

D.HELLO ACCP!

8.在java中,存储()类型的数据需要占用4个字节的空间;

A.boolean

B.int

C.char

D.double

9.关于常量的说法不真确的是();

A.常量是在程序执行过程中值不发生变化的量;

B.定义常量要使用final来修饰

C.常量名一般使用大写字母来表示

D.字符常量要使用双引号括起来

10.在以下java的数据类型中,()数据类型最适合存储性别变量;

A.int

B.double

C.char

D.long

11.编译运行以下java代码,则输出结果正确的是();

public class TestJava{

public static void main(){

int x=1;

x+=x+3;

System.out.println(x);

}

}

A.4

B.5

C.8

D.编译报错

12.以下声明变量的语法错误的是();

A.int 4x;

B.boolean 中华人民共和国成立68年;

C.String str=”云“;

D.char lesson1_1;

13.在Java中,Scanner类提供从控制台获取键盘输入的功能,下列语句()能正确实例化Scanner类的对象,用于获得键盘输入的数据。

A.Scanner input=new Scanner(System.out);

B.Scanner input=new Scanner(System.in);

C.Scanner input=new Scanner(System);

D.Scanner input=new Scanner();

14.Java类的main()方法如下所示,当程序启动运行后,用户在控制台输入“4.0”,则程序将();

public static void main(String args[]){

Scanner input=new Scanner(System.in);

int score=input.nextInt();

System.out.print(score);

}

A.输出“4”;

B.输出“4.0”;

C.程序正常运行,但不输出任何内容;

D.程序出现错误,被中断,提示输入内容不匹配,无法获得整型数值;

15.以下java代码横线处填写()能实现判断用户是否为偶数。

//…省略代码…

Scanner input=new Scanner(_______);

System.out.print(“请输入一个数字:”);

int num=___________;

if(num%2==0){

System.out.print(“您输入了一个偶数!”);

}

A.System.in intput.next()

B.System.in input.nextInt()

C.System.out input.next()

D.System.out intput.nextInt()

16.假设通过控制台输入数字15则下面代码运行结果是();

import java.util.*;

public class Test{

public static void main(String args[]){

int a=10;

Scanner input=new Scanner(System.in);

double num=input.nextDouble();

System.out.println(num+a);

}

}

A.15

B.25

C.25.0

D.编译正确,运行时报错

17.下列选项中,关于java数据类型的说法错误的是();

A.存储如性别‘男’或‘女’的数据最好使用char数据类型

B.存储如员工编号或员工年龄的数据最好使用int数据类型

C.存储如商品价格或员工工资的最好使用double数据类型

D.存储如真或假、是或否的数据最好使用String数据类型

18.在java中,下面赋值语句正确的是();

A.int i=1.34;

B.Boolean bool=1;

C.String str=’HelloWorld’;

D.以上都不正确

19.在java应用程序中,商品价格最好使用()数据类型的变量存储。

A.int

B.String

C.Char

D.Double

20.在java中,11%2+5*12/6

A.9;

B.10;

C.11;

D.12

21.为一个boolean类型变量赋值时,可以使用()方式。

A.boolean a=1;

B.boolean a=(9>=10);

C.boolean a=”真”;

D.boolean a=false;

22.编译运行以下java代码,则输出结果正确的是();

public class Test{

public static void main(String args[]){

double num=1.2;

System.out.println(++num);

}

}

A.1.2

B.2.4

C.2.2

D.运行时错误

23.在java中,下列运算符合法的是();

A.&&

B.<>

C.if

D.=

24.下列程序执行的结果是:();

public lass Test{

public static void main(String[] args){

int i=0;

++i;

i++;

i--;

System.out.println(i);

}

}

A.3;

B.1;

C.2;

D.0;

25.在Java中,以下程序的编译运行结果是();int i=3;

int count=(i++)+(i++)+(i++);

System.out.println(count);

A.输出6;

B.运行时错误

C.输出11

D.输出12

26.在java中,下列代码段的输出为();

int score=80;

if(score>=60){

System.out.print(“中等”);

}else if(score>=80){

System.out.print(“良好”);

}else if(score>=90){

System.out.print(“优秀”);

}else{

System.out.print(“差”);

}

A.中等

B.中等良好

C.良好

D.差

27.在java中,以下代码的运行结果是();

public class Test{

public static void main(String[] args){

int math=90,English=56;

if(math>85){

System.out.println(“老师说:数学不错,奖励一个MP4”);

}else if(english<60){

System.out.println(“老师说:英语太差不能出国!”);

}else{

System.out.println(“老师什么也没说!”);

}

}

}

A.老师说:数学不错,奖励一个MP4!

老师说:英语太差不能出国!

B.老师说:数学不错,奖励一个MP4!

C.老师说:英语太差不能出国!

D.老师什么也没说!

28.在java中,运行如下代码段将在控制台输出()。

int num=14;

if(num<=15){

System.out.println(“mid”);

}

if(num<=20){

System.out.println(“big”);

}

A.mid

B.big

C.mid

big

D.无任何输出

29.编译运行如下代码输出结果();

public class Test{

public static void main(String args[]){

int num=5;

if(num<=5){

num+=2;

System.out.println(num);

}

System.out.println(num+5);

}

}

A.10;

B.5

10;

C.7;

12;

D.运行出错

30.在java中,下列是合法的if多重选择结构的是()。

A.if(){

//代码块

}

B.if(){

//代码块

}else{

//代码块

}

C.if(){

//代码块

}else{

if(){

//代码块

}

}

D.if(){

//代码块

}else if(){

//代码块

}else if(){

//代码块

}else{

//代码块

}

31.给定某java程序的main方法如下所示,该程序的运行结果是();public static void main(String[] args ){

boolean boo=true;

if(boo==false){

System.out.println(“a”);

}else{

System.out.println(“b”);

}

}

A.输出a

B.输出b

C.输出ab

D.运行时出错

32.Java中关于if条件结构描述错误的是()

A.if条件结构是根据条件判断之后再做处理的一种语法结构

B.关键字if后小括号里必须是一个条件表达式,表达式的值必须为boolean类型

C.if后小括号里表达式的值为false时,程序需要执行大括号里的语句

D.if语句可以和else一起使用

33.在java程序的条件结构中,如果需要处理的等值条件判断的变量值为一个单个整型数字,则可以使用的条件结构的是()。

A.多重if结构

B.程序控制流程语句

C.嵌套if结构

D.以上都可以

34.分析如下所示的java代码,编译运行后的输出结果是();

public static void main(String args[]){

boolean a=true;

Boolean b=false;

if(!(a&&b)){

System.out.print(“!(a&&b)”);

}else if(!(a||b)){

System.out.println(“!(a||b)”);

}else{

System.out.print(“ab”);

}

}

A.!(a&&b)

B.!(a||b)

C.ab

D.!(a||b) ab

35.在Java程序中,以下程序的运行结果是();

public class Test{

public static void main(String args[]){

int s=78;

if(s>60){

System.out.print(“>60”);

}if(s>70){

System.out.print(“>70”);

}if(s>80){

System.out.print(“>80”);

}if(s>90){

System.out.print(“>90”);

}else{

System.out.print(“<60”);

}

}

}

A.>60

B.>70

C.>60>70

D.>60>70<60

36.阅读下面java代码片段,正确的输出结果是()。

public static void main(String args[]){

int num=23;

switch(num%5){

case 1:

System.out.println(“春天”);

break;

case 2:

System.out.println(“夏天”);

break;

case 3:

System.out.println(“秋天”);

case 4:

System.out.println(“冬天”);

break;

default:

System.out.println(“无季节”);

}

}

A.秋天

B.冬天

C.秋天

冬天

D.编译出错

37.在java中,下列代码段的输出为()

int score=60;

switch(score){

case 60:

System.out.println(“中等”);

case 80:

System.out.println(“良好”);

break;

case 90:

System.out.println(“优秀”);

}

A.中等

B.中等

良好

C.中等

优秀

D.中等

良好

优秀

38.以下是文件HelloAccp.java文件中的代码,请分析该段代码的运行结果是()pubic class HelloAccp{

public static void main(String args[]){

char str=’1’;//1

switch(str){ //2

case ‘1’: System.out.println(“I’m First”);//3

case ‘2’: System.out.println(“I’m Second”);//4

break;

}

}

}

A.I’m First

B.第3行存在错误:缺少break语句

C.I’m First I’m Second

D.I’m First

I’m Second

39.在java中,如下代码段的输出结果为()

public static void main(String args[]){

int i=4;

switch(i--){

default:

System.out.println(“i不符合判断条件”);

case 1:

System.out.println(“i=1”);

case 2:

System.out.println(“i=2”);

break;

case 3:

System.out.println(“i=3”);

}

}

A.i不符合判断条件

B.i=3

C.i不符合判断条件

i=1

i=2

D.i不符合判断条件

i=1

i=2;

i=3;

40.在ASCII码中,大写字母A的编码是65,下面java代码的输出结果为()

public static void main(String args[]){

char ch=’A’;

switch(ch+1){

case 65:

System.out.println(“A”);

case 66:

System.out.println(“B”);

case 67:

System.out.println(“C”);

break;

default:

System.out.println(“default”);

break;

}

}

A. B

C

B. B

C

Default

C. A

B

C

D.编译错误

41.下列有关switch的说法,正确的是()

A.switch结构可以完全替代多重if结构

B.条件判断为等值判断,并且判断条件为数组时,可以使用switch结构

C.条件判断为等值判断,并且判断的条件为字符时,可以使用switch结构

D.条件判断为等值判断,并且判断的条件为整型变量时,可以使用switch结构

42.在Java中,关于数组以下说法正确的是()

A.通过数组的length()方法可获得数组的长度

B.通过数组的size属性可获得数组的长度

C.通过数组的length属性可获得数组的长度

D.通过数组的size()方法可获得数组的长度

二、简答题(4*5’)

1.Java常用的基本类型有哪几种?分别占几个字节?

2.数据类型之间的转换分别有哪两种?并举例说明。

3.抽象类与接口的异同点?

4.接口能否继承接口?接口能否实现接口?抽象类能够继承接口?抽象类能否实现接

口?一个类能同时继承几个类?能同时实现几个接口?

三、编程题

1.(5’)做一个猜数字的游戏,在控制台提示用户输入自己喜欢的数字,然后在程序中随机

生成一个数字,将用户输入数字和程序随机生成的数字进行比较,如果相等的话说明猜对了,给予奖励,如果猜错了就没有奖励。效果如下图所示;

2.(6’)写程序实现如下描述的功能:运行程序时提醒用户输入三个字“我爱你”,输入之后

系统输出打印语句结果为:你爱我,即实现逆序打印。

public class Reverse{

public static void main(String args[]){

//在这里书写代码

}

}

3.(7’)编写一个Java程序,从控制台输入某个年份,用所学知识if-else语句判断该年份是

否为闰年。

4.(8’)使用while循环计算1的阶乘到10的阶乘之和,即计算1!+2!+3!+4!+……+8!+9!

+10!。(提示:10!=10*9*8*7*6*5*4*3*2*1,9!=9*8*7*6*5*4*3*2*1,……,3!=3*2*1,2!=2*1,1!=1*1)

5. (12’)有一个整型数组int arr[]=new int[6],arr[0]=5,arr[1]=12,arr[2]=9,arr[3]=3,arr[4]=7:1)对arr数组进行降序排序,并输出打印;(提示:降序即按照从大到小的顺序排序)

2)从控制台输入一个数字插入到这个arr数组中,插入后的数组元素依然是降序顺序排列.

java期末考试知识点总结

java知识点总结 应同学要求,特意写了一个知识点总结,因比较匆忙,可能归纳不是很准确,重点是面向对象的部分。 java有三个版本:JAVA SE 标准版\JAVA ME移动版\JAVA EE企业版 java常用命令:java, javac, appletview java程序文件名:.java, .class java的两类程序:applet, application; 特点,区别,这两类程序如何运行 java的主方法,主类,共有类;其特征 java的数据类型,注意与C++的不同,如字符型,引用型,初值 java与C++的不同之处,期中已总结 java标记符的命名规则 1)标识符有大小写字母、下划线、数字和$符号组成。 2)开头可以是大小写字母,下划线,和$符号(不能用数字开头) 3)标识符长度没有限制 4)标识符不能使关键字和保留字 面向对象的四大特征 抽象、封装、继承、多态 封装,类、对象,类与对象的关系,创建对象,对象实例变量 构造函数,默认构造函数,派生类的构造函数,构造函数的作用,初始化的顺序,构造方法的重载 构造函数:创建对象的同时将调用这个对象的构造函数完成对象的初始化工作。把若干个赋初值语句组合成一个方法在创建对象时一次性同时执行,这个方法就是构造函数。是与类同名的方法,创建对象的语句用new算符开辟了新建对象的内存空间之后,将调用构造函数初始化这个新建对象。 构造函数是类的特殊方法: 构造函数的方法名与类名相同。 构造函数没有返回类型。 构造函数的主要作用是完成对类对象的初始化工作。 构造函数一般不能由编程人员显式地直接调用。 在创建一个类的新对象的同时,系统会自动调用该类的构造函数为新对象初始化。 类的修饰符:public类VS 默认; abstract类; final类; 1)类的访问控制符只有一个:public,即公共的。公共类表明它可以被所有其他类访问和引用。 若一个类没有访问控制符,说明它有默认访问控制特性,规定该类智能被同一个包中的类访问引用(包访问控制)。 2)abstract类:用abstract修饰符修饰的类被称为抽象类,抽象类是没有具体对象的概念类,抽象类是它所有子类的公共属性集合,用抽象类可以充分利用这些公共属性来提高开发和维护效率。 3)final类:被final修饰符修饰限定的,说明这个类不能再有子类。所以abstract与final 不能同时修饰一个类。 域和方法的定义 1)域:定义一个类时,需要定义一组称之为“域”或“属性”的变量,保存类或对象的数据。

Java基础知识总结(超级经典)

Java基础知识总结 写代码: 1,明确需求。我要做什么? 2,分析思路。我要怎么做?1,2,3。 3,确定步骤。每一个思路部分用到哪些语句,方法,和对象。 4,代码实现。用具体的java语言代码把思路体现出来。 学习新技术的四点: 1,该技术是什么? 2,该技术有什么特点(使用注意): 3,该技术怎么使用。demo 4,该技术什么时候用?test。 ----------------------------------------------------------------------------------------------- 一:java概述: 1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器; 1994年将Oak语言更名为Java; Java的三种技术架构: JAVAEE:Java Platform Enterprise Edition,开发企业环境下的应用程序,主要针对web程序开发; JAVASE:Java Platform Standard Edition,完成桌面应用程序的开发,是其它

两者的基础; JAVAME:Java Platform Micro Edition,开发电子消费产品和嵌入式设备,如手机中的程序; 1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre。 2,JRE:Java Runtime Environment,java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。 3,配置环境变量:让java jdk\bin目录下的工具,可以在任意目录下运行,原因是,将该工具所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。 环境变量的配置: 1):永久配置方式:JAVA_HOME=%安装路径%\Java\jdk path=%JAVA_HOME%\bin 2):临时配置方式:set path=%path%;C:\Program Files\Java\jdk\bin 特点:系统默认先去当前路径下找要执行的程序,如果没有,再去path中设置的路径下找。 classpath的配置: 1):永久配置方式:classpath=.;c:\;e:\ 2):临时配置方式:set classpath=.;c:\;e:\ 注意:在定义classpath环境变量时,需要注意的情况 如果没有定义环境变量classpath,java启动jvm后,会在当前目录下查找要运

java基础笔试测试题与答案

Java 一章至五章考试 一. 填空题(8 分) 1. 面向对象的三大原则是( 封装),( 继承) 和( 多态).2 分 2. 如果想在对象实例化的同时就初始化成员属性,则使用( 构造函数).2 分 3. ( 实体) 方法和( 构造) 方法不能修饰为abstract ?2分 二.选择题(60 分) 1) 在Java 语言中,下列(a,d )是不满足命名规范的变量名。(选择二项) a) 姓名 b) $Name c) _instanceof d) instanceof 2) 下列Java 代码片段的输出结果是( a ) 。 char c='a'; int i=c; float f=i; byte b=(byte)c; System.out.println(c+","+i+","+f+","+b); a) 编译错误 b) a,97,97,97 c) a,97,97.0,97 d) a,97,97.0f,97 3) 下列Java 代码中,空白处的代码是(b,c )。( 选择两项) public interface Fee{ public float calLabFee(float unitPrice, float time); } public class FeeImpl implements Fee { public float calLabFee(float unitPrice, float time){ return unitPrice * time; } } public class FeeInterfaceTest { public static void main(String[] args){ ________________ Float labFee = fee.calLabFee(400.00,5); } }

java考试试卷及答案初级

选择题(3分) 1、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点( ) A)安全性B)多线程C)跨平台D)可移植 2、程序的三种基本控制结构是( ) A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列D.调用、返回和转移 3、在Java语言中,下列哪些语句关于内存回收的说明是正确的( ) A.程序员必须创建一个线程来释放内存 B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 4、下列Object类中的方法,哪一项不是完全跟线程有关( ) A.String toString() B.void notify() C.void notifyAll() D.void wait() 5、给出下面代码:( ) public class Person{ static int arr[] = new int[10]; public static void main(String a[]) { System.out.println(arr[1]); } } 下列说法中正确的是: A.编译时将产生错误 B.编译时正确,运行时将产生错误 C.输出0 D.输出空 6、二叉树的前序、中序和后序遍历法最适合采用()来实现。查找树中,由根结点到所有其他结点的路径长度的总和称为(),而使上述路径长度总和达到最小的树称为(),它一定是()。 A. 递归程序 B. 迭代程序 C. 队列操作 D. 栈操作 A. 路径和 B. 内部路径长度 C. 总深度 D. 深度和 A. B-树 B. B+树 C. 丰满树 D.穿线树 A. B-树 B. 平衡树 C. 非平衡树 D. 穿线树 7、下列说法中正确的是( )

Java基础知识

Java基础知识 Java基础知识精选 Java技术具有卓越的通用性、高效性、平台移植性和安全性,下面整理了一些Java基础知识,希望对大家有所帮助! 1、Java中成员变量又分为实例成员变量和类成员变量。 2、写类的目的是为了描述一类事物共有的属性和功能。 3、成员变量和局部变量的类型可以是Java中的任何一种数据类型。 4、用修饰符static说明的成员变量是类变量。 5、变量的名字与成员变量的名字相同,则成员变量被隐藏,该成员变量在这个方法内暂时失效。 6、用修饰符static说明的成员变量是类变量。 7、如果局部变量的名字与成员变量的名字相同,成员变量将被隐藏。 8、方法定义包括两部分:方法声明和方法体。 9、在Java中,当一个方法不需要返回数据时返回类型必须是void。 10、方法重载是指,一个类中可以有多个方法具有相同的名字和类型,但这些方法的参数必须不同。 11、在Java程序语言中,它允许在一个class中有几个方法,都有相同的名字,这种用法称为方法重载。 12、构造方法是一种特殊方法,它的名字必须与它所在的类的名字完全相同,并不返回任何数据类型。

14、因为类体的内容由成员变量的.定义和成员方法的定义两部分组成,对成员变量的操作只能放在成员方法中。 15、Java中构造方法与类名相同,没有返回值,在创建对象实例时由new运算符自动调用。 16、在类方法中只能调用类变量和类方法,不能调用实例方法。 17、实例方法既能对类变量操作也能对实例变量操作,而类方法只能对类变量进行操作。18、Java中类是创建对象的模板。 19、当使用一个类创建了一个对象时,我们也说给出了这个类的实例。 20、Java中用类创建一个对象包括对象的声明和为对象分配内存两个步骤。 21、对象声明的一般格式为类名对象名。 22、一个类通过使用new运算符可以创建多个不同对象,这些对象将分配不同得内存空间。 23、一个类通过使用new运算符和类的构造方法为声明的对象分配内存。 24、对象创建完后,通过使用运算符“.”,对象可以实现对变量的访问和方法的调用。 25、Java中不同对象的实例变量将被分配不同的内存空间。 26、Java中如果类中的成员变量有类变量,那所有的对象的给这样的变量分配给相同的一处内存。 27、类方法和实例方法的区别在于类方法不但可以由对象调用还可以直接由类名调用,而实例方法却不可以。 28、类方法方法不但可以由对象调用还可以直接由类名调用,而实例方法却不可以。

Java基础知识及面试题

Java基础 1.什么是类?类是某一种事物的一般性的集合体,是相同的或相似的各个事物共同特性的一种抽象。 2.什么是对象?在面向对象概念中,对象是类的实例。对象与类的关系就像变量与数据类型的关系一样。 3.类的核心特性 封装性:类的封装性为类的成员提供公有的、缺省的、保护的、私有的等多级访问权限。目的是隐藏类中的私有变量和类中方法的实现细节。 继承性:类的继承性提供从已存在的类创建新类的机制,继承使一个新类自动拥有被继承类的全部可继承的成员。 多态性:类的多态性提供类中方法执行的多样性,有两种表现形式:重载和覆盖。 4.方法:对象中方法表达了对象所具有的行为。 5.属性:一个对象的属性是能够被外界或对象所处的环境所感知或操纵的数据或状态。 6.什么是Java?Java是一门易于编程的跨平台编程语言,同时又是一个开发、应用、执行和部署的平台。 7.为什么要有Java?Java与平台无关、一次编译处处运行、以及他的易于编程的特性。 8.Java开发程序的步骤?编写源代码(2)编译(3)执行 9.Java的环境变量 1)JAVA –HOME jdk的安装路径 2)CLASSPATH jvmclass字节码文件时的搜索路径 3)PATH 是系统的环境变量、命令的搜索路径 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)验证字节码文件

史上最全Java基础知识点归纳

史上最全Java基础知识点归纳 写这篇文章的目的是想总结一下自己这么多年来使用Java的一些心得体会,主要是和一些Java基础知识点相关的,所以也希望能分享给刚刚入门的Java 程序员和打算入Java开发这个行当的准新手们,希望可以给大家一些经验,能让大家更好学习和使用Java。 这次介绍的主要内容是和J2SE相关的部分,另外,会在以后再介绍些J2EE 相关的、和Java中各个框架相关的内容。 经过这么多年的Java开发,以及结合平时面试Java开发者的一些经验,我觉得对于J2SE方面主要就是要掌握以下的一些内容。 1.JVM相关(包括了各个版本的特性) 对于刚刚接触Java的人来说,JVM相关的知识不一定需要理解很深,对此里面的概念有一些简单的了解即可。不过对于一个有着3年以上Java经验的资

深开发者来说,不会JVM几乎是不可接受的。 JVM作为Java运行的基础,很难相信对于JVM一点都不了解的人可以把Java语言吃得很透。我在面试有超过3年Java经验的开发者的时候,JVM几乎就是一个必问的问题了。当然JVM不是唯一决定技术能力好坏的面试问题,但是可以佐证Java开发能力的高低。 在JVM这个大类中,我认为需要掌握的知识有: JVM内存模型和结构 GC原理,性能调优 调优:Thread Dump,分析内存结构 class二进制字节码结构,class loader体系,class加载过程,实例创建过程 方法执行过程 Java各个大版本更新提供的新特性(需要简单了解) 2.Java的运行(基础必备) 这条可能出看很简单,Java程序的运行谁不会呢?不过很多时候,我们只是单纯通过IDE去执行Java程序,底层IDE又是如何执行Java程序呢?很多人并不了解。

java考试题型与要点

考试题型 一、选择题(20分,每题2分)10题 二、简答题(15分,每题5分)3题 三、程序填空(共45分,每空3分)3大题 四、编程题(20分)1大题 各章复习要点 第2 章Java基本语法 1、标识符 标识符的作用是用于标识程序中的各个元素。由字母、下划线(_)、美元符($)、数字(0~9)组成,数字不能开头。 2、关键字P20(浏览一下,留意学过的关键字) 3、数据类型 基本数据类型P20 图2-1 、P21 表2-1 各类型需要掌握的要点:类型名称、关键字,占用位数、取值范围(整数类型的取值范围取决 于占用位数,如:占用位数为n,则表示的范围是:-2n~2n-1) 4、运算符与表达式 自增、自减符号在变量的前后位置不同,表达式的结果是不一样的。 例如int a=1,b=2; System.out.print(a++>--b); 结果为false ++在a 变量后面,那表达式a++的值是取a 的值作为表达式的值,值为1。

--在b 变量之前,那表达式--b 的值是多少?先让b 自减1,而后在取b 的值作为表达式的值,即为1。最后a 自增1。 条件运算符?:例如:int x=-1,y; y=x>=0?x:-x; y 的值是? y 值为1 5、利用Scanner类输入 (1) 导入util 包。例如:import java.util.*; (2) 创建Scanner类对象引用。例如:Scanner s=new Scanner(System.in); (3) 获得键盘输入的数据,可以调用nextXXX()方法。获得整型数据,使用nextInt();获得双精度浮点数据,使用nextDouble();获得一字符串,使用nextLine()。例如int a=s.nextInt(); P29 例2-3 6、程序流程控制 顺序结构、选择结构(if(), ; if(), else, ; switch() case n,: ; [default: , ;])、循环结构(while(){ , }; do{, }while(); for(;;) , ) P49 例2-20、P60 例2-29 7、数组 一维数组的声明与创建 声明:类型数组名[ ] ;或类型[ ] 数组名; 创建:数组名=new 类型[数组长度]; 也可以声明与创建合并:类型数组名[ ]=new 类型[数组长度]; 注意等号左边的中括号中不要写出数组长度

java基础知识点

第一天课程(2012-7-10) JAVA常用的名词 JVM java 虚拟机 Application 应用程序必须有一个入口的方法叫做public static void main(String[] args){} Applet 小应用程序该程序必须要嵌在一个容器中运行,它有自己的生命周期 .sun. 重点: JAVA的开发环境 JDK: java 开发工具集 JDK版本问题 1.4不支持泛型 5.0 泛型 6.0 枚举 默认安装路径C:\Program Files\Java\ JRE: JAVA运行时环境 环境变量的配置 (1)Path:window寻找可执行应用程序的一个查找路径不同的路径之间使用;来分隔 配置一个路径 C:\Program Files\Java\jdk1.6.0_26\bin (2)CLASSPATH 告诉系统到那些目录下面去查找对应的要执行的文件 .;D:\3020\j2se\cx\chapter1

.表示当前目录 预习作业: 常用的DOS命令 切换目录查询文件拷贝文件重命名移动文件 *表示通配符 *.java *.* 常用java命令 Javac 编译命令主要将以.java结尾的Java文件编译生成以.Class结尾的二进制字节码文件。 Javac java文件名.java Java 运行命令 java 类名 Javadoc 生成帮助文档命令 javadoc java文件 面向对象的基本概念 类 (属性方法构造方法 ) 对象对象创建传递销毁 面向对象的三大基本特性:封装、继承、多态 OOP AOP

是由客观事物经过大脑抽象而形成概念,是对一类事物的描述 使用class 关键字来描述类 类中有属性和方法: 属性对应的是事物的静态特性 (可以叫做成员变量) 方法对应的是事物的动态特性 对象:是类的一个具体的实例化 创建对象对象的方法: 类名对象名 = new 类名(); 调用类的构造方法来创建对象构造方法是特殊的方法:方法名=类名 注意:类中属性和方法必须在创建对象之后才能使用 对象.属性对象.方法 .表示引用 第二天课程(2012-7-11) JAVA语言描述 类的声明 语法格式: [< modifiers>] class < class_name> { [] [] []

JAVA笔试题--基础很全有答案

第一组 1.下列不可作为java语言修饰符的是(D) A) a1 B) $1 C) _1 D) 11 2.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A) A) a1.java B) a1.class C) a1 D) 都对 3.整型数据类型中,需要内存空间最少的是(D) A) short B) long C) int D) byte 4. Java 类可以作为(C) A) 类型定义机制 B) 数据封装机制 C) 类型定义机制和数据封装机制 D) 上述都不对 5.在创建对象时必须(C) A) 先声明对象,然后才能使用对象 B) 先声明对象,为对象分配内存空间,然后才能使用对象 C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象 D) 上述说法都对 6.在调用方法时,若要使方法改变实参的值,可以(B) A) 用基本数据类型作为参数 B) 用对象作为参数 C) A和B都对 D) A和B都不对 7. Java中(C) A) 一个子类可以有多个父类,一个父类也可以有多个子类 B) 一个子类可以有多个父类,但一个父类只可以有一个子类 C) 一个子类可以有一个父类,但一个父类可以有多个子类 D) 上述说法都不对 8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B) A) 安全性B) 多线性C) 跨平台D) 可移植 9. Character流与Byte流的区别是(C) A) 每次读入的字节数不同B) 前者带有缓冲,后者没有 C) 前者是字符读写,后者是字节读写D) 二者没有区别,可以互换使用

10.以下声明合法的是( D ) A、default String s; B、public final static native int w( ) C、abstract double d; D、abstract final double hyperbolicCosine( ) 11.关于以下application的说明,正确的是( C ) 1.class StaticStuff 2.{ 3.static int x=10; 4.static { x+=5;} 5.public static void main(String args[ ]) 6.{ 7.System.out.println(“x=”+ x); 8.} 9.static { x/=3;} 10. } A、4行与9行不能通过编译,因为缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器 C、编译通过,执行结果为:x=5 D、编译通过,执行结果为:x=3 12.关于以下程序代码的说明正确的是( D ) 1.class HasStatic{ 2.private static int x=100; 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.System.out.println(“x=”+x); 12.} 13.} A、5行不能通过编译,因为引用了私有静态变量 B、10行不能通过编译,因为x是私有静态变量 C、程序通过编译,输出结果为:x=103 D、程序通过编译,输出结果为:x=102 13.以下选项中循环结构合法的是( C ) A、while (int i<7) { i++;

java考试要点

1、什么是平台无关性?Java怎样实现平台无关性? 答:平台无关性是指一个应用程序能够运行于不同的操作系统平台。Java采用虚拟机技术支持平台无关性,不同操作系统需要相应的不同的Java虚拟机,由Java虚拟机执行Java源程序(*.java)编译生成的字节码文件(*.class),而不是由操作系统直接执行通常高级语言生成的可执行文件(*.exe)。 2、面向对象技术的三个核心特性是什么? 答:①类的封装性;②类的继承性;③类的多态性; 3、什么是封装?为什么要将类封装起来?封装的原则是什么? 答:封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”。为了增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,一特定的访问权限来使用类的成员。原则: 1、把尽可能多的东西藏起来.对外提供简捷的接口。 2、把所有的属性藏起来。 4、什么是多态性?什么是方法的重载?方法的重载和覆盖有什么区别? 答:多态是指一个方法可以有多种实现版本。方法重载:同一个类中的多个方法可以同名但参数列表必须不同。重载与覆盖的区别:1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系。2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。3、覆盖要求参数列表相同;重载要求参数列表不同。4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调用时的实参表与形参表来选择方法体的。 5、什么是接口?接口和抽象类有哪些相同之处和不同之处? 答:接口是一组常量和抽象方法的集合;相同点:1.两者都包含抽象方法,约定多个类共用方法的参数列表和返回值。2.两者都不能被实例化。3.两者都是引用数据类型,其变量可被赋值为子类或实现接口类的对象。不同点:1.抽象类约定多个子类之间共同使用的方法;接口约定多个互不相关类之间共同使用的方法。2.抽象类与子类之间采用单重继承机制;一个类实现多个接口则实现了多重继承的功能。3.抽象类及其类中成员具有与普通类一样的访问权限;接口的访问权限有public和缺省两种,接口中成员的访问权限均是public。4.抽象类中可以包含非抽象方法,也可以生命构造方法;接口中的方法全部是抽象方法,不能声明构造方法。5.抽象类中可以声明成员变量,子类可以对该变量赋值;接口中只能声明常量。 6、什么是单重继承?什么是多重继承?类的层次体系为什么需要多重继承?单重继承有什么缺点?既然 有缺点,为什么java仍然采用单重继承?java怎样实现多重继承? 答:单重继承是指子类只能继承一个父类的属性和操作 多重继承是指子类可以继承了多个父类的属性和操作。因为单继承使得java结构简单,层次清楚,易于管理,更安全可靠,避免了c++中因多重继承而引起的难以预测的冲突。Java通过接口实现多重继承。 7、在什么情况下需要申明内部类?内部类有哪些特性? 答:当结构作为数组的元素类型时,或当一个类中需要使用结构时,可以将结构声明为内部类。 特征:内部类不能与外部类同名;内部类具有封装性;内部类具有继承性;内部类具有抽象性;使用点运算符“.”引用内部类;内部类具有类成员的4种访问权限;内部类具有静态特征。

Java基础知识试题

第一章JA V A基础知识 §1.1 Java概述 1.完成在Windows 2000操作系统下环境变量的配置 2.创建一个Java程序,输出自己的基本信息:名字和年龄。 3.概述Java语言的版本发展过程。 4.简述Java语言的运行机制。 5.在自己的机器上用JDK开发运行环境完成第一个Java程序的编辑、编译、运行过程。6.简述Java语言的特点,Java虚拟机的概念及作用。 §1.2 java基本语法 1.什么是变量?什么是常量? 2.什么叫表达式,Java语言中共有几种表达式? 3.下面哪些表达式不合法?为什么? HelloWorld 2Thankyou _First -Month 893Hello non-problem HotJava implements $_MyFirst 4. 以下的选项中能正确表示Java语言中的一个整型常量的是( )。 A) 12. B) -20 C) 1,000 D) 4 5 6 5. 以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i; C) a=a + 1= 5; D) y = int ( i ); 6. 若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32 7. 若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A) 0 B) 4 C) 8 D) –4 8. 在Java语言中,逻辑常量只有true 和___________ 两个值。 9.Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和 __________两种具体类型。

Java基础入门教程(适合所有初学者)

第1章 Java语言概述与面向对象思想 1 1.1 Java语言的发展 1 1.1.1 Java语言的产生 1 1.1.2 Java语言的发展 1 1.2 Java语言的特点 2 1.3 面向对象与面向过程的差异 3 1.3.1 面向过程思想回顾 4 1.3.2 面向对象思想介绍 4 1.4 面向对象程序设计中的主要概念和特征 4 1.4.1 主要概念 5 1.4.2 主要特征 5 *1.5 Java与C++的差异 5 1.6本章小结5 习题 5 第2章 Java语言开发环境 6 2.1 JDK 6 2.1.1 JDK的简介6 2.1.2 JDK的构成6 2.1.3 JDK的使用6 2.2 IDE 8 2.2.1 IDE简介8 2.2.2 JBuilder 9 2.2.3 Eclipse 9 2.2.4 相关资源9 2.3 Project管理9 2.3.1 Project的含义9 2.3.2 可行的Project组织模式9 2.3.3 主要开发工具的Project目录10 2.4 本章小结10 习题10 第1章 Java语言概述与面向对象思想 1.1 Java语言的发展 1.1.1 Java语言的产生以介绍面向对象编程的基本概念、基本理论为重点,结合Java语言的语法规则、编程特点和设计思想、强调容易发生错误和编程应注意的地方,使学生能对Java 技术有一个总体了解,通过本课程学习,使学生掌握Java语言的基础知识,理解和掌握面向对象程序设计的基本思想,熟练地使用Java语言进行程序的编写、编译以及调试工作 上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以避免C++的一些不足。 该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树(Oak)。后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。 随着Internet的迅速发展,Web应用日益广泛,Java语言也得到了迅速发展。1994年,Gosling

JAVA基础面试题经典

JAVA基础面试题经典

第一阶段题库 基础知识部分: 1.JDK是什么?JRE是什么? a)答:JDK:java开发工具包。JRE:java运行时 环境。 2.什么是java的平台无关性? a)答:Java源文件被编译成字节码的形式,无论 在什么系统环境下,只要有java虚拟机就能运行这个字节码文件。也就是一处编写,处处运行。这就是java的跨平台性。 3.在一台电脑上配置java环境,path起什么作 用?如何配置? a)答:path的作用是在DOS环境下,能在任意 位置使用JDK目录中bin文件夹中的可执行程序,来编译执行java程序。 b)在环境变量中找到path变量,把bin文件夹 的绝对路径加上即可。 4.什么样的标识符是合法的? a)由字母、数字、_和$组成,长度不限。其中字 母能够是大写或小写的英文字母,数字为0到9。

b)标识符的第一个字符不能是数字。 c)标识符区分大小写。 d)标识符不能包含空格。 5.Java有几种基本数据类型? a)byte,short,int,long,char,boolean,float,double 6.什么是隐式类型转换?什么是显示类型转换? a)当将占位数少的类型赋值给占位数多的类型 时,Java自动使用隐式类型转换。 b)当把在级别高的变量的值赋给级别底变量时, 必须使用显示类型转换运算。 7.&&和&区别,||和|区别? a)&&和||是短路与,短路或,当左边的表示式能 判断当前结果,则不判断右边的表示式。 b)而& 和|则将两边的表示式都运算完毕后,再 算结果。 8.break,continue区别? a)break结束最近的一个循环,continue结束当 次循环,进入下次循环。 9.类的命名规则是什么? a)如果类名使用拉丁字母,那么名字的首写字母 使用大写字母。

java基础知识分析

Java 思路 1写代码 1)明确需求,我要做什么? 2)分析思路。要怎么做?1 2 3。 3)确定步骤。每一个思路部分用到哪些语句,方法,和对象。 4)代码实现。用具体的java语言代码把思路体现出来 2学习新技术的四点 1)该技术是什么? 2)该技术有什么特点(使用注意) 3)该技术怎么使用。Demo 4)该技术什么时候使用?test。 一Java 概述: 1991年San公司的JamesGosilng(詹姆斯·高斯林) 等人开始开发名称为Oak的语言,希望用于控制嵌入在有线电视交换盒,PDA等的微处理器; 1994年将Oak语言更名为Java; Java的三种技术架构; JAVAEE:Java Platform Enterprise Edition,开发企业环境下的应用程序,主要针对wep程序的开发 JAVASE: Java Platform Enterprise Edition, 完成桌面应用程序的开发是其他两者的基础; JAVAME: Java DevelopmentKit, java的开发和运行环境,java的开发工具jre;

JDK, JRE: 1JDK:java DevelopmentKit , java的开发和运行环境,java的开发工具和jre。 2JRE:java Runtime Environment, java程序的运行环境,java运行的所需的类库+JVM(java 虚拟机)。 3配置环境变量:让java jdk\bin目录下的工具,可以在任意目录下运行,原因是,将该工具所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。 1) 永久配置方式: JAVA_HOME=%安装路径%\Java\jbk Path=%JAVA_HOME%\bin 2) 配置临时方式: setpath=%path%C:\ProgramFiles\Java\jdk\bin 特点:系统默认先去当前路径下找要执行的程序,如果没有,再去path中设置路径下找。 classpath的配置: 1)永久配置方式:classpath=.;c:\;e:\ 2)临时配置方式:setclasspath=.c:\;e:\ 注意:在定义classpath环境变量时,需要注意的情况: 如果没有定义环境变量classpath,java启动jvm后,会在当前目录下查找要运行的类文件。如果指定了classpath,那么会在指定的目录下查找要运行的类文件。 还会在当前目录找吗?两种情况: 1)如果classpath的值结果有分号,在具体路径中没有找到运行的类,会默认在前目录 在找一次。 2)如果classpath的值结果处没有分号,在具体路径中没有找到运行的类,不会再当前 目录找。 一般不指定分号,如果没有在指定目录下找到想运行的类文件,就报错,这样可以调试程序4javac命令和java命令做什么事情呢? 要知道java是分两部分的: 一个人是编译,一个是运行。 Javac: 负责的是编译的部分,当执行javac时,会启动java的编译器程序。对指定扩展名的.java 文件进行编译。生成了jvm可以识别的字节码文件。也就是class文件也就是java的运行程序。 Java: 负责运行的部分.会启动jvm.加载运行时所需的类库,并对class文件进行执行. 一个文件要被执行,必须要有一个执行的起始点就是main函数(也叫方法)。

java期末考试复习知识点

6.1.2字符串类几个常用方法 String类定义了许多方法,下面是几个最常用方法。 public int length():返回字符串的长度,即字符串包含的字符个数。注意,对含有中文或其他语言符号的字符串,计算长度时,一个符号作为一个字符计数。 public char charAt(int index):返回字符串中指定位置的字符,index表示位置,范围为0~s.length()-1。 public String concat(String str):将调用字符串与参数字符串连接起来,产生一个新的字符串。 –public String substring(int beginIndex, int endIndex):从字符串的下标beginIndex开始到endIndex结束产生一个子字符串。 –public String substring(int beginIndex):(子链\子串);从字符串的下标beginIndex开始到结束产生一个子字符串。 –public String replace(char oldChar, char newChar):将字符串中的所有oldChar 字符改变为newChar字符,返回一个新的字符串。 –public String to Upper Case():将字符串转换成大写字母。 – public String to Lower Case():将字符串转换成小写字母。public String trim():返回去掉了前后空白字符的字符串对象。 (vt.装饰; 修剪; 整理; adj.整齐的,整洁的; 修长的; 苗条的; 修剪; 整齐; 健康状态; 装束;) public boolean isEmpty():返回该字符串是否为空(""),如果length()的结果为0,方法返回true,否则返回false。 下面程序要求从键盘输入一个字符串,判断该字符串是否是回文串。一个字符串,如果从前向后读和从后向前读都一样,则称该串为回文串。例如,“mom”和“上海海上”都是回文串。 算法思想:对于一个字符串,先判断该字符串的第一个字符和最后一个字符是否相等,如果相等,检查第二个字符和倒数第二个字符是否相等。这个过程一直进行,直到出现不相等的情况或者串中所有字符都检测完毕,当字符串有奇数个字符时,中间的字符不用检查。 6.1.7 String对象的不变性 在Java程序中一旦创建一个String对象,就不能对其内容进行改变,因此说Java的String对象是不可变的字符串。 有些方法看起来是修改字符串,但字符串修改后产生了另一个字符串,这些方法对原字符串没有任何影响,原字符串永远不会改变。请看下面的例子。 ?程序6.6 ChangeString.java public class ChangeString{ public static void main(String[] args){ String s = new String("Hello,world"); s.replace('o','A'); // s的值并没有改变 s = s.substring(0,6).concat("Java"); s.toUpperCase(); // s的值并没有改变 System.out.println(s); } } 程序运行结果为:

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!”); } 课堂笔记

相关文档
最新文档