JAVA知识点
1、java标识符的组成
由52个字母A-Z,a-z,数字0-9,下划线_,美元符$组成
2、集合
继承Collection接口:
1、List接口:内容允许重复
2、Set接口:内容不允许重复
3、queue接口:队列接口
4、sortedSet接口:单值排序接口
Map接口:
1、HashMap接口:无序存放,key不重复
2、HashTable接口:无序存放,key不重复
3、TreeMap接口:按key排序,key不重复
4、IdentityHashMap接口:key可重复
5、WeakHashMap接口:弱引用Map集合
3、面向对象三大基本特征:封装、继承、多态。 五大原则:单一职责原则(SRP),开放封闭原则(OCP),里氏替换原则(LSP),依赖倒置原则(DIP),接口隔离原则(ISP)。
4、重写和重载的区别:
重写(Override):重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。
重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。
5、使用取模运算时,余数的符号和除数的符合相同。
6、static变量被所有的对象共享,在内存中只有一个副本,它当且仅在类初次加载时会被初始化。
非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响。
7、JVM的内存划分
私有线程:
1、程序计数器:当前线程的行号计数器。
2、JVM虚拟栈:局部变量表、操作数栈、方法出口、局部变量表:存放各种已知的基本类型和对象引用。
3、本地方法区:虚拟机使用native方法。
共享线程:
1、堆:存放对象实例
2、方法区:存放类加载信息,静态变量、常量,类信息。
3、运行时常量池(方法区的一部分):存放字面量和符号引用。
8、Java和JavaSciprt区别
Java是一种真正的面向对象的语言,即使是开发简单的程序,必须设计对象;JavaScript是种脚本语言,它可以用来制作与网络无关的,与用户交互作用的复杂软件。它是一种基于对象(Object-Based)和事件驱动(Event-Driven)的编程语言,因而它本身提供了非常丰富的内部对象供设计人员使用。
9、接口的成员变量是使用public static final所修饰的,在定义成员变量时必须要初始化。而方法只能使用public 和 abstract来修饰。