面试基本题

1、静态成员变量和非静态成员变量的区别

    1、静态变量用static关键字修饰。
    2、如果定义了静态变量,那么加载class文件的时候会优先加载。
    3、它的范围是直到程序停止,静态内存才会消失。
    4、而且static关键字修饰的变量会只加载一次。
    5、静态方法中可以直接调用静态的,而非new,访问格式:类名.静态;
    6、静态方法中不可直接调用非静态方法,但是非静态方法中,可以直接调用静态的。

2、什么是包内访问,包外访问,类内访问

Ø Public:不同包、同一包、类内都可用
Ø Private:类内
Ø Protected: 不同包的子类、同一包、类内都可用
Ø 不写时:同一包内、类内

3、单元测试与集成测试的区别

单元测试的粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”。
集成测试界于单元测试和系统测试之间,起到“桥梁作用”,一般由开发小组采用白盒加黑盒的方式来测试,既验证“设计”,又验证“需求”。
系统测试的粒度最大,一般由独立测试小组采用黑盒方式来测试,主要测试系统是否符合“需求规格说明书”。
验收测试与系统测试相似,主要区别是测试人员不同,验收测试由用户执行。
黑盒测试不考虑程序内部结构和逻辑结构,主要是用来测试系统的功能是否满足需求规格说明书。一般会有一个输入值,一个输入值,和期望值做比较。
白盒测试主要应用在单元测试阶段,主要是对代码级的测试,针对程序内部逻辑结构,测试手段有:语句覆盖、判定覆盖、条件覆盖、路径覆盖、条件组合覆盖
集成测试主要用来测试模块与模块之间的接口,同时还要测试一些主要业务功能。
系统测试是在经过以上各阶段测试确认之后,把系统完整地模拟客户环境来进行的测试

4、程序和进程的区别,进程与线程的区别

程序是由 多个进程 运行的 程序是给用户操作 进程是给程序来支持的
从一定意义上讲,进程就是一个应用程序在处理机上的一次执行过程,它是一个动态的概念,而线程是进程中的一部分,进程包含多个线程在运行。


你可能感兴趣的:(面试基本题)