【面试】java基础
1.面向对象编程有哪些特征?
1.封装(Encapsulation)
封装就是隐藏对象的属性和实现细节,控制成员属性的访问和修改权限,通过特定公开的方法暴露给外面访问。
比如:
private String name = "泡代码的小二黑"; public String getName(){ return this.name; }
name属性被private封装起来,外面只能通过对象的getName才能访问。
2.继承(Inheritance)
继承就是指子类继承父类的成员和方法,使子类也具有父类相同的行为,java只可以实现单继承。
3.多态(Polymorphism)
多态是指同一个行为具有多个不同的表现形式或形态,比如一个类的方法在不同的情况有不同表现形式。
比如:方法重载,同一个方法名可以有不同参数的表现形式。
2.JDK与JRE的区别是什么?
1.jdk:java development kit,是整个java的核心,包含java运行环境jre和一系列java开发工具完整包。
2.jre:java runtime enviroment,是java程序运行环境,包含jvm、java核心类库等
jre只能用来运行java应用程序,不能用于编译开发,是jdk的子集。安装完jdk后,就会有jre目录,jre属于jdk的子集。
3.如何编译和运行java文件?
1.使用javac命令来编译 .java文件,运行之后会生成Test.class文件
javac Test.java
2.使用java命令来运行类文件
java Test
4.java中关键字有哪些?
关键字 | 含义 |
package | 指定包名 |
import | 引用类 |
class | 定义类 |
interface | 接口 |
abstract | 抽象类或抽象方法 |
new | 创建对象 |
this | 实例本身 |
super | 引用父类 |
void | 无返回 |
byte | 字节型 |
char | 字符型 |
int | 整型 |
short | 短整型 |
long | 长整型 |
float | 单精度浮点数 |
double | 双精度浮点数 |
boolean | 布尔型 |
enum | 枚举型 |
strictfp | 精确浮点 |
extends | 继承 |
implements | 实现 |
private | 私有权限,本类中可用 |
protected | 保护权限,本类和子类可用 |
public | 公开权限,可跨包使用 |
final | 类不可以继承,方法不可以重写,常量 |
static | 静态属性 |
synchronized | 线程同步 |
if | 如果 |
else | 否则 |
for | for循环 |
do | do while循环 |
while | do while循环 |
switch | switch case分支 |
case | switch case分支 |
default | switch case分支默认值 |
break | 结束循环 |
continue | 继续循环 |
return | 返回 |
try | 异常代码捕获 |
catch | 异常处理 |
finally | 最后处理 |
throw | 手动抛出一个异常 |
throws | 声明抛出的异常 |
instanceof | 判断是否是xx的实例 |
volatile | 线程可见 |
transient | 不用序列化 |
native | 非java实现方法 |
assert | 断言 |
var | 任意类型,java10新增 |
保留关键字 | |
goto | 跳转 |
const | 常量 |
特殊关键字 | |
true | 真 |
false | 假 |
null | 空值 |
afafaadf
adfa
asdf
ad
adfaadf
aa
aadfadfadfadf
dfa
sf
d
sdf
sdf
sd
fs
f
sdf
s
fs
df
sd
fs
df
sd
f
sdf
sd
f
sdf
sd
fs
df
sd
fsd
f
sd
fs
df
sd
fs
df
s
df
sdf
sd
fs
df
sd
fs
df
sd
fsd
f
sd
fsd
f
sdf
sd
fs
d
fds
fs
f
sd
fs
df
sd
fs
df
s
df
sd
fs
d
fs
df
sdf
sd
f
sf
sd
f
s
读书犯困,因为那是梦开始的地方;