Java笔记

(1)Java 内存模型

堆:new对象存放的地方  一直new对象,堆就会溢出

栈:每个方法在被调用时就会创建一个栈针,方法执行完成,栈针销毁
方法区:类信息,常量,静态变量。即时编译器变异后的代码等数据,运行时常量池时方法区的一部分(元数据区) String.valueOf(i++) 一直循环 就会元数据区就会溢出
程序计数器

本地方法栈

(2)java类的加载机制

(3)接口与抽象方法的不同

         相同点:1、都能定义抽象方法、继承接口

                       2、都不能被实例化


         不同点:1、接口里只能包含抽象方法,静态方法和默认方法,不能为普通方法提供方法实现,

                            抽象类则完全可以包含普通方法。

                        2、接口里只能定义静态常量,不能定义普通成员变量。抽象类都可以

                        3、 接口不能包含构造器,抽象类可以包含构造器,抽象类里的构造器并不是用于创建对象,而是让其子类调用

                               这些构造器来完成属于抽象类的初始化操作。

                        4、接口里不能包含初始化块,但抽象类里完全可以包含初始化块。

                       5、一个类最多只能有一个直接父类,包括抽象类,但一个类可以直接实现多个接口,通过实现多个接口可以弥、

                            补Java单继承不足。

(4)序列化

        1、序列化和反序列化的概念

                序列化:把对象转换为字节序列的过程称为对象的序列化。

                反序列化:把字节序列恢复为对象的过程称为对象的反序列化。

        2、什么时候需要序列化

                    当你想把的内存中的对象状态保存到一个文件中或者数据库中时候;

                    当你想用套接字在网络上传送对象的时候;

                    当你想通过RMI传输对象的时候;

                    只有序列化的数据,才能存入数据库、写入文件、才能网络传输

你可能感兴趣的:(Java笔记)