java面试常问考点_Java基础面试被常问到知识点

本文概述了Java中的关键概念,包括类的加载机制、Servlet生命周期、接口与抽象类的区别、JDBC连接数据库的方法、序列化与反序列化过程、Java虚拟机的工作原理、static与final关键字的使用、多态的基本要素等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、类的加载机制

将类的.calss文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个Java.lang.class对象,用来封装类在方法区内的数据结构。

2、加载.class文件的方式

①从本地系统中直接加载。

②通过网络下载class文件(典型应用applet:通过网络传输,由浏览器自动装载并执行。用法:在HTML文件中插标签)。

③从zip、jar等归档文件中加载class文件。

④从专有数据库中提取class文件。

⑤将Java源文件动态编译为class文件。

3、类的生命周期

加载、验证、准备、解析、初始化。

4、Servlet的生命周期

①实例化:获得请求,容器创建servlet容器。

②初始化:调用init()方法。该方法只会执行一次,作用是获取资源。

③响应客户端请求:调用service()方法。

④服务终止(销毁):调用destroy()方法。释放占用的系统资源。

5、接口和抽象类的区别

①一个类可以实现多个接口,但是只能继承一个抽象类。

语法上:

②接口中只能定义抽象方法,抽象类中可以有普通方法。

③接口中只能有静态成员变量,抽象类中可以有普通成员变量。

④接口中不能有构造方法,抽象中可以有构造方法。

$$  记住抽象类与普通类的区别:

不能创建实例  ||  在类名前加abstract。

6、Jdbc连接数据库的方式

url = "jdbc:oracle:thin:@192.168.1.15:1521:ORCL";

url = "jdbc:mysql://localhost:3306/数据库名”

①加载驱动:class.forName(“com.mysql.jdbc.Driver”);

oracle.jdbc.OracleDriver

②建立连接:

Connection conn = DriverManager.getConnection(url);

③创建PreparedStatement对象:用来向数据库发送查询和命令。preparedstatement ps = connection.preparestatement(sql);

④处理结果集(SQL语句):ResultSet rs = ps.excuteQuery();

⑤关闭连接:按顺序rs.close ()> ps.close()  > conn.close()

7、Java序列化

将一个对象转换成二进制表示的字节数组,通过保存或转移这些字节数据达到持久化目的。

反序列化:将字节数组重新构造成对象。

8、Java虚拟机

①运行所有Java程序的虚拟计算机,是Java语言的运行环境。

②Jav虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。

特点:

与平台无关,引入Java虚拟机,Java语言在不同平台上运行时不需要重新编译,其执行字节码,把字节码转换成机器指令执行。

9、Static

①被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。

②静态方法中不能访问非静态成员方法和非静态成员变量,但是在非静态成员方法中是可以访问静态成员方法/变量。

③静态资源的加载顺序是严格按照静态资源的定义加载的。

④静态代码块对于定义在他之后的静态变量,可以赋值,但不能访问。

1 public classA {2 c = 3; System.out.println(c);3 }4

5 private static int c;

10、final

①修饰类不可继承

②修饰方法不可重写

③修饰变量(注意:是指修饰的引用不能变,引用指向的内容可以变)

另:被final修饰的方法,JVM会尝试为之寻求内联,提升效率。

被final修饰的常量,在编译阶段会存入调用类的常量池中。

11、多态

抽象、继承、封装是多态的基础,多态是抽象、继承、封装的实现。

多态的三要素:

①继承②重写③父类引用指向子类对象

以上内容纯属个人见解,不足之处请大家指明。2017-09-16 10:29:00

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值