第一篇Java基础知识复习题

一、Java基本语法:

1.需要注意的关键点:(1).Java中的程序代码可分为结构定义语句和功能执行语句,其中,结构定义语句用于声明一个类或方法,功能执行语句用于实现具体的功能。每条执行语句的最后都必须用分号(;)结束。(2)Java语言严格区分大小写。

2.Java中的注释:对程序的某个功能或者某行代码的解释说明,只在Java的源文件中有效,在编译程序时编译器会忽略这些注释信息,不会将其编译到class字节码文件中去。

3.单行注释:“//”来表示,多行注释:/*开头*/结束。

4.标识符:可以由任意顺序的大小写字母、数字、下划线、和美元符号组成,但不能以数字开头,不能是Java中的关键字。包名字母一律小写,类名和接口名每个单词首字母大写,常量名所有字母都大写,变量名和方法名第一个单词首字母小写,第二个单词开始每个单词首字母大写。

5.关键字:是编译语言里事先定义好并赋予特殊含义的单词,也称作保留字。和其它语言一样,Java中保留了许多关键字。关键字会变颜色。

1.常量:就是在程序中固定不变的值,是不能改变的数据。在Java中,常量包括(整型常量:int.short.byte.long,浮点数常量:double和float,布尔常量boolean,字符常量char,null常量:null空常量)。

2.变量:在程序运行期间,随时可能产生一些临时数据,应用程序会将这些数据保存在一些内存单元都用一个标识符来标识。这些内存单元我们称之为变量,定义的标识符就是变量名,内存单元存储的数据就是变量的值。

 

 

3.类型转换:1.当把一种数据的值赋值给另一种数据的变量时,需要进行数据类型转换。2.数据类型转换分为两种;自动类型转换和强制类型转换。

4.自动类型转换:也叫隐式类型转换,两种数据类型在转换过程中不需要显示地进行声明。两个要求:一是两种数据类型彼此兼容,二是目标类型的取值范围大于原类型的取值范围。取值范围小的数可以直接赋值给取值范围大的数。

 

 

 5.强制类型转换:也叫显式类型转换,指的是两种数据类型之间的转换需要进行显式声明。两种类型彼此不兼容或者目标类型取值范围小于原类型时,自动类型转换无法进行,需要强制类型转换。格式如下:目标类型 变量=(目标类型)值。

 6.变量的作用域:变量需要在他的作用范围内才可以被使用,这个作用的范围成为变量的作用域。变量一定会被定义在某大括号中,该大括号包含的代码区域便是这个变量的作用域。

算术运算符

输入

Scanner sc= new Scanner(System.in)//打开扫描器

数据类型 变量名=sc.next数据类型()

double num1=sc.nextdouble()

自增减运算符

运算符在前,先运算后使用。运算符在后,先使用在运算。

逻辑运算符

&&:两者都为真,结果才是真

||:只要有一种为真,结果就为真

!:非真即假,非假即真

当false&&……&&……结果一定为false

当true||……||……结果一定为true

位运算符

&:两者都为真,结果才是真,两者都为1,结果才为1

|:只要有一种为真,结果就为真,一者为1,结果就为1

~(取反):真变假,假变真,0变1,1变0,非1即0,非0即1

^(异或):两者相同即为0,不同为1

位移操作

左移<<:将运算符左边的操作数的二进制数据,按照运算符右边操作数指定的位数向左移动,补完后空位补零,可能正负都会变化。

a<<2为左移两位,a<<1为左移一位。

右移>>:二进制数据向右移动,不过补的数按最高位补,溢出舍去

>>>:无符号右移,溢出舍去,补零

<<整体左移,空位补零,溢出去掉

>>整体右移,正数补零,负数补一,溢出去掉

>>>整体右移,空位补零,溢出去掉

 选择结构语句:if语句是指如果满足某种条件,就进行某种处理。if...else,if...else语句用于对多个条件进行判断,进行多种不同的处理。

 

 

嵌套循环:是指在一个循环语句的循环体中再定义一个循环语句的语法结构。while,do...while,for循环语句都可以进行嵌套,并且他们可以互相嵌套。

修饰符:是对访问权限的限定。返回值类型:用于限定方法返回值的数据类型。参数类型:用于限定调用方法时传入参数的数据类型。参数名:是一个变量,用于接收调用方法时传入的数据。return关键字:用于结束方法以及返回方法指定类型的值。返回值:被return语句返回的值,该值会返回调用者。

数组 

.初始化数组:在初始化数组时还有一种方式叫做静态初始化,就是在定义数组的同时就为数组的每个元素赋值。数组的静态初始化有两种方式。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、判断题(每题1分,共15分) 1、Java允许创建不规则数组,即Java多维数组中各行的列数可以不同。 ( ) 2、接口和类一样也可以有继承关系,而且都只能支持单继承。 ( ) 3、所有类至少有一个构造器,构造器用来初始化类的新对象,构造器与类同名,返回类型只能为void。 ( ) 4、包是按照目录、子目录存放的,可以在程序中用package定义包,若没有package一行,则表示该文件中的类不属于任何一个包。 ( ) 5、Java对事件的处理是采用委托方式进行的,即将需要进行事件处理的组件委托给指定的事件处理器进行处理。 ( ) 6、在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将父类放在前面,子类放在后面。 ( ) ..... 二、单项选择题(每题2分,共30分) 1、若在某一个类定义中定义有如下的方法: final void aFinalFunction( );则该方法属于( )。 A、本地方法 B、解态方法 C、最终方法 D、抽象方法 2、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )。 A、 public static void main() B、 public static void main(String[ ] args) C、 public static int main(String[ ] args) D、 public void main(String arg[ ]) 3、在Java中,一个类可同时定义许多同名的..... ...... 14、一个线程的run方法包含以下语句,假定线程没有被打断,以下哪项是正确的( ) 1.try{ 2. sleep(100); 3. }catch(InterruptedException e){ } A、不能通过编译,因为在run方法中可能不会捕捉到异常。 B、在第2行,线程将暂停运行,正好在100毫秒后继续运行。 C、在第2行,线程将暂停运行,最多在100毫秒内将继续运行。 D、在第2行,线程将暂停运行,将在100毫秒后的某一时刻继续运行。 15、以下哪个接口的定义是正确的?( ) A、 interface A { void print() { } ;} B、 abstract interface A { void print() ;} C、 abstract interface A extends I1, I2 //I1、I2为已定义的接口 { abstract void print(){ };} D、 interface A { void print();} 三、程序阅读题(1~8题每题4分,第9题占8分,共40分) 1、若文件test.dat不存在,则试图编译并运行以下程序时会发生什么情况? import java.io.*; class TestIO { public static void main(String[] args) { try{ RandomAccessFile raf=new RandomAccessFile("test.dat","r"); int i=raf.readInt(); } catch(IOException e){System.out.println("IO Exception"); } } } 2、以下程序的输出结果为 。 public class EqualsMethod { public static void main(String[] args) { Integer n1 = new Integer(12); Integer n2 = new Integer(12); System.out.print(n1= =n2); System.out.print(“,”); System.out.println(n1! =n2); } } ........ 1、在java中如果声明一个类为final,表示什么意思? 答:final是最终的意思,final可用于定义变量、方法和类但含义不同,声明为final的类不能被继承。 2、父类的构造方法是否可以被子类覆盖(重写)? 答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。 3、请讲述String 和StringBuffer的区别。 答:String 类所定义的对象是用于存放“长度固定”的字符串。 StringBuffer类所定义的对象是用于存放“长度可变动”的字符串。 4、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢? ........
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值