java考试知识点整理

1)JAVA语言的开发工具包JDK的全称java.exe  javac.exe

2)JAVA语言标识符命名大小写规则

a. 标识符应该由字母,数字,下划线-,$、¥组成。首字母不能使用数字

b. 不能把关键字和保留字作为标识符

c. 标识符没有长度限制

d. 对大小写敏感

3)JAVA语言关键字

a. Abstract     boolean     break  byte  case  catch char class continue const(保留字) default    do      double     else       extends     false    final     finally    float     for     goto      if   implements   import       instanceof       int      interface      long     native        new    null     package       private     protected   public     return      short     static      super   switch    synchronized    this     throw    throws   transient    true   try    void     volatile   while

4)JAVA语言数据类型(特殊的运算符)

a. 基本数据类型:

a) 整型:byte    short  int   long

b) 浮点:float   double

c) 字符型:char

d) 布尔:boolean

b. 引用数据类型:数组、类、接口

c. 运算符:

a) 赋值运算符:=

b) 算术运算符:++   --(一元)  + - * / % (二元)

c) 关系运算符:>     <     >=     <=     ==    !=

d) 逻辑运算符:&&   ||    !     ?:(三级运算符)

e) 位运算:~(一元)   >>   <<   >>>   &   |    ^(二元)

f) 其他(强制转换。。。。)

5)关系运算符和逻辑运算符的应用

6)条件、分支、循环、转移语句

a. 条件:if   else

b. 分支:switch case   break   default

c. 循环:while   do while     for  

d. 转移:break   continue   return  

7)面向对象的意义

a. 封装性

b. 继承性

c. 多态性

d. 通信相关性

8)JAVA中的类定义,每个字段的含义

a. [修饰符]     class   <类名>   [extends 父类名]     [implements 接口列表]   {}

b. Modifier   class  className [extends parentClass] [implements interface]{    }

c. 修饰符          类名         继承   父类名     接口     接口名

d. eg: public   class   Name   [extends  famliy][implements  parents]{}

e. 方括号里内容只有在需要的时候才写

9)什么是抽象,什么是接口

a. 抽象:

10)成员变量修饰符(各自的含义)

a. static   标识该成员变量是静态变量

b. public  公有的

c. private  私有的

d. Protected   保护变量

e. final    标识该成员变量是常量

11)方法的修饰符(各自的含义)

a. public  公有的

b. static   静态

c. protected   保护的

d. private  私有的

e. transient   不参与序列化过程*

f. abstract   抽象的

g. native   该方法用非java实现(*

h. fianl      此方法不能被重写

i. sysnchronized    同步的

12)方法的重载和覆盖的判断标准

a. 重载:

a) 属于同一个类中的多个成员方法

b) 这些方法具有相同的方法名称

c) 方法中的参数个数或类型不同

d) 方法的返回值不能单独作为方法重载的判断条件

b. 覆盖

a) 只存在于有继承关系的父类和子类中的方法

b) 方法都具有相同的方法名称

c) 方法中的参数个数以及类型相同

d) 方法中的返回值也必须相同

13)public static void main(String [] args)

a. 公共权限   静态   不需要返回值

b. (String [] args)主函数的参数列表,字符串属性类型的参数

14)对象的生命周期,new运算符的作用

a. 创建  使用   释放

b. New用来在堆中申请空间的

15)什么是异常处理Exception, 异常和循环的嵌套关系,e.toString()  e.getMessage  e.printStackTrace()

a. e.toString()返回当前描述字符串

b. e.getMessage  返回异常详细信息

c. e.printStackTrace()输出异常对象使用堆栈的记录

16)直接抛出和间接抛出 throw throws的区别

a. 直接:在这种情况下,产生异常的方法直接通过catch语句进行处理,异常的抛出与处理局限在同一个方法的内部,不会与其他方法产生关联;

b. 间接:在由try-catch-finally语句组成的复合语句中,catch捕获由try抛出的异常。在某些情况下,可以把异常往上递交给调用该方法的方法处理,使用throws语句来实现间接抛出异常。

17)自定义异常 extends Exception

a. 为了创建和使用自定义的异常,必须先定义一个异常类。自定义异常类通常从Exception类派生而成。

b. 有了自定义的异常类后,只要在可能抛出异常的方法后使用throw关键字,就可以在方法中抛出异常

c. 自定义异常的形式:

d. class MyException extends Exception

e. {

f.     …

g. }

18)JAVA标准的输入和输出

a. 标准输入为键盘   public static final InputStream in

b. 标准输出为显示器   public static final PrintStream out

19)scanner类的作用,输入数据的方法

a. 用于扫描输入文本的类

b. Scanner reader = new Scanner(System.in)

c. reader.nextInt();

20)File类和RandomAccessFile类,数据操作的方法,注意写模式

a. 通过File, 可以获得文件属性和状态

b. 通过RandomAccessFile类可以处理任何类型的数据文件.

c. File类的构造方法

d. public File(String path)

e. public File(String path, String name)

f. public File(File dir, String name)

g. 常用方法:

a) canRead()/canWrite()判断该文件是否可读写

b) delete()删除文件

c) mkdir()创建目录

d) renameTo()用于修改文件名称

e) isDirectory():用于判断文件对象是否为目录

f) isFile()判断文件对象是否为文件

g) getName()用于获得文件对象名称

h) getPath()用于获得路径名称

i) getParent()用于获得目录名称

j) getAbsolutePath()用于获得绝对路径名称

k) list()如果文件是目录,则获得该目录中所有文件名,

l) lastModified():用于获得文案最后修改时间

m) Length()用于获得文件的字节长度

21)输入流和输出流的含义

 

 

 

22)FileInputStream和FileOutputStream,使用字节数组,注意追加模式

a. 主要功能是建立一个与文件相关的输入/输出流, 并提供从文件中读取/写入一个字节或一组数据的方法

b. 构造方法:

c. public FileInputStream(String name) throws FileNotFoundException

d. public FileInputStream(File file) throws FileNotFoundException

e. 重要方法:

a) Int available()获得文件可读长度

b) void close() 关闭输入流

c) Int read() 从文件中读取一个字节长度的内容

d) Int read(byte[] b)从文件中读取一个字节数组的长度

e) Int read(byte [] b,int off,int len) 从文件读取指定长度的字节到数组中。

f) long skip(long n)文件指针跳过字符数

f. public FileOutputStream(String name) throws FileNotFoundException

g. public FileOutputStream(String name, boolean append) throws FileNotFoundException

h. public FileOutputStream(File file) throws FileNotFoundException

i. public FileOutputStream(File file, boolean append) throws FileNotFoundException

j. 重要方法

a) void close()关闭输出流

b) Void write(byte b)throws IOException写入一个字节数据

c) Void write(byte [] b)throws IOException 连续写入一个字节数组的数据

d) Void read(byte [] b,int off,int len)连续写入一定长度的字节数组数据

23)FileReaderFileWriter,使用字符数组,注意追加模式

a. 构造方法

a) FileReader(File file)

b) FileReader(String fileName)

b. 重要方法

a) public int read() throws IOException  读取单个字符,返回一个int型变量代表读取到的字符

b) public int read(char [] c, int offset, int len)    读取字符到c数组,返回读取到字符的个数

c. 构造方法

a) FileWriter(File file)

b) FileWriter(File file, boolean append)

c) FileWriter(String fileName, boolean append)

d. 重要方法

a) public void write(int c) throws IOException

b) public void write(char [] c, int offset, int len)

c) public void write(String s, int offset, int len)

 

24)DataInputStreamDataOutputStream,数据操作方法

 

 

 

 

25)多线程的作用

a. 多线程可以改善任务等待执行的时间

26)多线程的四种状态转换,及相关方法,常见方法sleep  wait  notify  stop

a. 

27)Thread类,Runnable接口

a. Thread类提供了7种重载的构造方法

b. public Thread()

c. public Thread(Runnable target)

d. public Thread(RUnnable target, String name)

e. public Thread(String name)

f. public Thread(ThreadGroup group, Runnable target)

g. public Thread(ThreadGroup group, String name)

h. public Thread(ThreadGroup group, Runnable taget, String name)

i. 使用该接口,可以不用定义专门的线程类,而直接使用原有的类

j. 通过在类声明时增加class MyThreadClass implements Runnable

k. 在创建类对象时采用Thread(Runnable)构造函数

l.  MyThreadClass thd1 = new MyThreadClass()

m.  Thread myThread = new Thread(thd1)

n. Thread类中带有Runnable接口的构造方法有

o. public Thread(Runnable target)

p. public Thread(Runnable target, String name)

q. public Thread(String name)

r. public Thread(ThreadGroup group, Runnable target)

s. public Thread(ThreadGroup group, Runnable target, String name)

28)覆盖public void run(),通过start()调用

a. Runnable接口中只有一个方法:public void run(),一个类实现Runable接口,必须覆盖run()方法,并在这个方法中编写线程程序。线程运行后自动执行run()中的代码,run()方法不需要在程序中调用。

b. 通过集成Thread创建线程对象的步骤:

a) 定义线程类继承Thread,并覆盖run()方法

b) run()方法中编写线程执行的代码

c) 使用new调用线程类的构造方法创建线程对象,并调用start()方法。

d) 调用start()方法后线程对象处于就绪状态,如果获得CPU资源,线程自动运行run()方法。有多个线程对象同时处于就绪状态时,这些线程交替使用CPU

29)多线程的优先级, 1-10

a. Java中,线程的优先级用setPriority()方法就行,线程的优先级分为1-10这10个等级,如果小于1或大于10,则抛出异常throw new IllegalArgumentException(),默认是5。优先级高的线程获取CPU资源的概率较大

30)同步锁的概念,synchronized,共享的数据要使用private修饰

 

 

 

31)String类,比较方法,字符定位方法,取子字符串方法

a. equals() 是否相等

b. compqreTo() 判断大小关系

c. charAt(int index) 返回索引位置字符

d. subString(int begin,int end)  截取子字符串

32)Random类,取值范围0...1,取整数Random.nextInt()

a. 随机数

33)Math, Math.sin(), Math.PI等常见方法

Math.PI 记录的圆周率 
Math.E 记录e的常量 
Math中还有一些类似的常量,都是一些工程数学常用量。

Math.abs 求绝对值 
Math.sin 正弦函数 Math.asin 反正弦函数 
Math.cos 余弦函数 Math.acos 反余弦函数 
Math.tan 正切函数 Math.atan 反正切函数 Math.atan2 商的反正切函数 
Math.toDegrees 弧度转化为角度 Math.toRadians 角度转化为弧度 
Math.ceil 得到不小于某数的最大整数 
Math.floor 得到不大于某数的最大整数 
Math.IEEEremainder 求余 
Math.max 求两数中最大 
Math.min 求两数中最小 
Math.sqrt 求开方 
Math.pow 求某数的任意次方, 抛出ArithmeticException处理溢出异常 
Math.exp 求e的任意次方 
Math.log10 以10为底的对数 
Math.log 自然对数 
Math.rint 求距离某数最近的整数(可能比某数大,也可能比它小) 
Math.round 同上,返回int型或者long型(上一个函数返回double型) 
Math.random 返回0,1之间的一个随机数

34)GUI的概念,布局管理器(FlowLayoutBorderLayout)容器(FramePanel)画板(Canvas

a. 布局管理器是容器所具有的特性,每种布局管理器都指定了一套组件的放置形式,适合于不同的场合。Java的布局管理器有4种:1.FlowLayout(流式布局)2.BorderLayout(边界布局) 3.  GridLayout(网格式布局) 4.CardLayout(卡片式布局)

b. 容器(container)是一组特殊的组件,它能容纳其他组件容器类是组件类的子类

c. 框架(Frame)类是窗口(Window)类的子类,它是一种带标题框并且可以改变大小的窗口

d. 框架(Frame)类的构造方法:public Frame ( )public Frame ( )其中,title指定框架的标题

e. 框架(Frame)类方法:

f. public void setTitle ( String title )   设置或修改框架的标题

g. public String getTitle ( )     获取框架的标题

h. Public void setBackground ( Color c )    设置框架的背景颜色

i. 面板(Panel)与框架类似,也是一种容器,可以容纳其他GUI组件 与框架不同的是,面板没有标题,不能独立存在,实例化以后必须使用Container类的add方法装入到Window对象或Frame对象中,这样它才可见

j. 面板(Panel)类的构造方法:public Panel ( )  使用默认的布局管理器   public Panel ( LayoutManager layout )  layout指定布局管理器。

  • 39
    点赞
  • 203
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
期末考试题型: 一、 填空题(本题共15空 ,每空1分,共15分。) 二、 单项选择题(本题共20小题,每题1分,共20分。) 三、 是非题(对划“√”,错划“×”,本题共10小题,每题1分,共10分。) 四、 简答题(本题共5小题,每小题5分,共25分。) 五、 程序填空题(本题共5空 ,每空2分,共10分。) 六、 编程题(本题共2小题,每小题10分,共20分。) 二、填空题 1、Java语言是一种完全的_面相对象___程序设计语言。 2、布尔型常量有两个值,它们分别是_true__、_false___。 3、在定义一个方法时,一般都要指明该方法的返回值类型,如果它不返回任何值,则必须将其声明成 void 。 4、在Java的语言环境中已经包含了一组相关的核心类库,它们属于Java.lang包。 5、写出完整的main方法的声明 public static void main(String args[]) 。 6、要设计一个Applet小程序,必须先引入包 java.applet 。 7、设x=2.5,a=7,y=4.7,算术表达式x+a%3*(int)(x+y)%2/4的值为:2.75___ 8、被关键字_final___修饰的方法是不能被当前类的子类重新定义的方法。 9、Java中类成员的限定词有以下几种:private, _protected__, public__, 默认友好。 10、基类的公有成员在派生类中的访问权限由_基类___决定。 11、用static修饰的方法,称为静态方法。它们不是对象的方法,而是整个类的方法。静态方法只能处理用关键字_static___修饰的数据。 12、在Java中有一种叫作__构造方法__的特殊方法,我们在程序中用它来对类的对象成员进行初始化。 13、面向对象技术具有_封装性___、_继承性___、_抽象性___、多态性等特性。 14、Java中所有类都是类 _Object___的子类。 15、顺序执行以下两个语句的输出结果是: 10 。 String s = “我喜欢学习Java!”; System.out.println(s.length( )); 16、据程序的构成和运行环境的不同,Java源程序分为两大类: Application 程序和 Applet 程序。 17、如果一个Java源程序文件中定义有4个类,则使用Sun公司的JDK编译器javac编译该源程序文件将产生 4 个文件名与类名相同而扩展名为 class 的字节码文件。 18、开发与运行Java程序需要经过的三个主要步骤为 编辑源文件 、 编译器编译生成字节码文件 和 解释器执行 。 19、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是 Applet 类的子类并且存储该源程序文件的文件名必须为 MyApplet.java 。 20、 一个Java Application源程序文件名为MyJavaApplication.java,如果使用Sun公司的Java开发工具JDK编译该源程序文件并使用其虚拟机运算这个程序的字节码文件,应该顺序执行如下两个命令: javac MyJavaApplication.javajava MyJavaApplication 。 21、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码字符占用 2 字节内存空间,这样,无论是中文字符还是英文字符,每个都是占用2 字节内存空间。 22、在Java程序中定义的类有两种成员: 静态成员 、 实例成员 。 23、Java源程序是由类定义组成的,每个程序中可以定义若干个类,但是只有一个类是主类。在Java Application中,这个主类是指包含 main 方法的类;在Java Applet里,这个主类是一个系统类 Applet 的子类。 24、创建一个名为 MyPackage 的包的语句是 package MyPackage ; , 该语句应该放在程序的位置为: 程序中非注释行的第一行 。 25、 抽象或abstract 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。 最终后final 方法是不能被当前类的子类重新定义的方法。 26、多态是指 一种定义,多种实现 ,在Java中有两种多态,一种是使用方法的 重载 实现多态,另一种是使用方法的 覆盖 实现多态。
Java是一种广泛使用的面向对象编程语言,具有强大的跨平台能力、安全性、可移植性和高度的抽象性。对于Java程序设计的知识点整理,我会提供一个简要概述和关键部分的介绍,但请注意,由于字数限制,这里无法提供完整的2000字详细内容。以下是Java程序设计中的一些核心知识点: 1. **Java概述**: - Java的历史和发展 - Java的特性和优势(如平台无关性、垃圾回收机制) - Java的核心API和类库 2. **Java语法基础**: - 数据类型和变量 - 运算符和表达式 - 控制结构(if-else、switch、循环等) - 数组和集合框架 3. **面向对象编程**: - 抽象类与接口的区别 4. **构造函数和析构器**: - 构造函数的作用和生命周期 - 初始化块和析构器的使用 5. **异常处理**: - 异常的概念和分类 - try-catch-finally语句结构 - 自定义异常和抛出异常 6. **输入输出流**: - 字符流(`System.out.println()`) - 文件I/O操作 - 输入/输出流的缓冲区和关闭资源 7. **类加载器和包**: - 类加载过程 - 包的作用和命名规则 8. **多线程**: - Thread类和Runnable接口 - 互斥量、信号量和条件变量 - 线程池和并发工具类 9. **集合框架**: - 核心类(List, Set, Map) - 集合接口(Iterable, Iterator) - 泛型和集合容器的使用 10. **IO流与网络编程**: - Socket编程 - ServerSocket和ClientSocket - 套接字工厂和NIO(非阻塞I/O) 11. **并发编程工具**: - CompletableFuture - ExecutorService和ThreadFactory - Future和Callable 12. **JVM和内存管理**: - 堆和栈的区别 - Garbage Collection(垃圾回收)机制 13. **数据库访问**: - JDBC连接数据库 - ORM框架(Hibernate, MyBatis) 14. **Spring框架**: - IoC和AOP概念 - Bean容器和配置文件 15. **测试驱动开发(TDD)**: - JUnit单元测试 - Mockito模拟对象 16. **Spring Boot**: - 简化Java应用的初始配置 - RESTful API的创建 相关问题: 1. Java的三大特性是什么? 2. 你能解释一下Java中的封装吗? 3. JUnit在单元测试中的作用是什么? 4. Spring框架如何简化开发流程? 如果想深入了解每个知识点,你可以查阅相关的教程书籍、在线文档或视频课程进行学习。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值