Java八股(第一篇文章)

Java八股(第一篇文章) Java基础面试说一下Java的特点主要有以下的特点平台无关性面向对象内存管理Java为什么是跨平台的在不同平台上安装对应的JVM就可以运行字节码文件运行我们编写的Java程序编译的结果不是生成机器码而是生成字节码字节码不能直接运行必须通过JVM翻译成机器码才能运行。不同平台下编译生成的字节码是一样的但是由JVM翻译成的机器码却不一样。Java 中所有参数传递都是值传递int四个字节long八个将字符串转换为整型int可以使用Integer.parseInt()那为什么还要保留int类型效率高存储空间小多态性可以分为编译时多态重载和运行时多态重写普通类可以直接实例化对象而抽象类不能被实例化只能被继承抽象类能加final修饰吗不能Java中的抽象类是用来被继承的而final修饰符用于禁止类被继承或方法被重写因此抽象类和final修饰符是互斥的不能同时使用。接口可以包含构造函数吗不可以根本没法new自然没有必要写构造函数静态变量和静态方法静态变量和静态方法是与类本身关联的而不是与类的实例对象关联。它们在内存中只存在一份可以被类的所有实例共享。静态变量特点共享性所有该类的实例共享同一个静态变量。如果一个实例修改了静态变量的值其他实例也会看到这个更改。初始化静态变量在类被加载时初始化只会对其进行一次分配内存。访问方式静态变量可以直接通过类名访问也可以通过实例访问但推荐使用类名