最近因为一个朋友想要学习Java,在帮助他找教程的过程中回想到了我自己当年学习Java的那段岁月,故写了此篇文章总结了一下初学Java所必须要掌握的知识点,然后把一部分常见的面试题罗列出来。给予刚刚开始学习Java的同学做一个参考。
?
?
最初由0,1组成的机器语言变成了简单指令的汇编语言,最后才是高级语言。而高级语言又分为面向过程语言与面向对象语言两种。而Java就是典型的面向对象语言。
?
?
你知道哪些高级语言?
?
他们分别是面向过程还是面向对象呢?
?
?
因为计算机只认识机器语言,所以我们写出的代码想要被计算机执行必须有一个转换的过程。这个转换的过程分为两种:编译执行,解释执行。
?
?
你知道什么是编译执行和解释执行么?
?
你知道他们各自的好处么?
?
你知道Java是如何执行的么?
?
?
Java语言的发展历程、Java这个名字的来历、J2EE、J2SE、J2ME。还有最经典的一句话:Compile once and run everywhere
?
?
你知道J2EE、J2SE、J2ME分别适用于什么场景么?
?
为什么Java可以一次编译到处运行呢?
?
Java语言的特性都是有什么?
?
?
JDK的下载和安装,环境变量的配置,HelloWord代码,javac、java命令,Java程序的基本结构
?
class="line">1 2 3 4 5
public class HelloJava { function">public static void main(String[] args){ System.out.println("Hello world!"); } }
?
?
你知道JDK每个文件夹的作用是什么吗?
?
jdk和jre的区别是什么?
?
public static void main(String[] args)每个关键字是什么意思?
?
?
常量、变量、标识符、数据类型、保留字、溢出、命名规则、变量类型转换
?
?
8大基本数据类型都有什么?
?
8大基本类型的数值范围是什么?
?
8大基本类型所占的内存空间分别是多少?
?
什么是强制类型转换和自动转换?
?
?
算术运算符、逻辑运算符、关系运算符、递增递减运算符、三目运算符、运算符的顺序
?
?
多级运算符组合使用计算结果你会了么?
?
++i和i++的区别是什么?
?
?
if、else if、else、switch、case、continue、break、label
?
?
continue和break的作用是什么?
?
if后面不加括号的话会如何?
?
switch都是支持什么数据类型?
?
?
do-while、while、for、嵌套循环
?
?
do-while和while的区别是什么?
?
?
一维数组、二维数组、数组下标、数组下标越界
?
?
数组的下标从什么开始的?
?
什么情况下会引起数组下标越界?
?
?
类的概念、对象的概念、类的成员变量和方法、static关键字、创建使用清除对象、构造
方法、重载、方法调用参数和返回值、访问控制符、内部类
?
?
一个方法是void表示什么?
?
Java方法中参数传递是值传递还是引用传递?
?
static变量和方法是什么时候初始化的?
?
访问修饰符都是有哪些?
?
怎么样进行方法重载?
?
?
继承、重写、抽象类、多态、this关键字、super关键字、对象的转型、接口
?
?
重载和重写的区别是什么?
?
抽象类和接口的区别是什么?
?
一个类可以继承多个类么?
?
子类会继承父类所有的成员变量和方法么?
?
面向对象的三大特征是什么?
?
?
异常的层次结构、异常处理过程、Error和Exception、try-catch-finally、throw、throws
?
?
常见的异常都有什么?
?
异常流程中包含多个return时的程序处理流程
?
Error和Exception的区别是什么?
?
throw和throws的区别是什么?
?
?
InputStream、OutputStream、FileInputStream、FileOutputStream、File、FileReader 、FileWriter
?
?
字节流和字符流的区别?
?
什么是序列化?
?
如何实现序列化?
?
?
Thread、Runnable 、start、run、主线程、系统线程、用户线程、线程的生命、周期、优先级
?
?
字节流和字符流的区别?
?
什么是序列化?
?
如何实现序列化?
?
?
mysql的安装、mysql基础命令、jdbc基本API
?
?
jdbc的操作步骤是什么?
?
相对于Statement,PreparedStatement的优点是什么?
?
以上所有内容仅仅是学习Java的最最基础的知识,如果你是Java初学者,当你完成了以上内容的学习的时候请你保持自我继续坚持下去,因为后面还有很多知识在等待着你。例如:jsp、servlet、SSM框架、Linux基础等等。?
?
?
?
?