JAVA的三种技术架构?
J2EE(企业版)是为开发企业环境下的应用程序提供的一套解决方案。J2SE(标准版)是为开发普通桌面和商务应用程序提供的解决方案。
J2ME(小型版)是为开发电子消费产品和嵌入式设备提供的解决方案。
JRE和JDK的区别
JRE是java运行时环境,包含了java虚拟机,java基础类库。是使用java语言编写的程序运行所需要的软件环境,
是提供给想运行java程序的用户使用的。
JDK是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。
Javac和Java命令能做什么事?
javac:负责的是编译的部分,当执行javac时,会启动java的编译器程序。对指定扩展名的.java文件进行编译。 生成了jvm可以识别的字节码文件。也就是class文件,也就是java的运行程序。
java:负责运行的部分.会启动jvm.加载运行时所需的类库,并对class文件进行执行.
JAVA的数据类型?
基本数据类型和引用数据类型。
&和&&的区别
&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。
|和||的区别?
“||”是逻辑或,即a||b只要a或者b中有一个为真即为真,而“|”则是按位或,是位运算符
堆和栈的区别?
堆:储存实体变量,通过垃圾回收机制进行回收
栈:储存局部变量,运行结束后就会释放
面向对象的特征
继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。
封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。
多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。
成员变量和局部变量:
1:局部变量描述的是这个方法体内的属性,而成员变量描述的是这个对象里的属性。
2:成员变量可以被public、protected、default、private、static、final修饰符修饰,局部变量只能被final修饰符修饰。
3:成员变量在堆里进行创建,局部变量在栈里进行创建。
4:局部变量是系统默认值,局部变量没有系统默认值,必须手动赋值。
构造函数和一般函数的区别
构造函数没有返回值类型定义,而一般函数有返回值类型定义。
构造函数的函数名和类名相同,而一般函数可以适用符合规则的任意字符串作为函数名。
构造函数不能使用return语句,而一般函数在函数返回值被定义为void的时候可以适用return语句。
构造函数使用new调用,而一般函数使用对象.方法()调用。
构造代码块和构造函数有什么区别
构造代码块的作用是该对象初始化。
对象一建立就运行,而且优先于构造函数执行。
构造代码块是给所有对象进行统一初始化,而构造函数是给对应的对象初始化。
构造代码块定义的是不同对象的共性的初始化内容