Java基础面试题
主页:写程序的小王叔叔的博客欢迎来访
支持:点赞收藏关注
社区:JAVA全栈进阶学习社区欢迎加入
目录
Java语言及数据库
2.01 Java语言基础
2.02 Java语言基础
2.03 Java面向对象
Java语言及数据库
2.01 Java语言基础
【知 识 点】Java语言及数据库-Java语言基础(1)-JDK和JRE
【题目描述】
JDK是什么?JRE是什么?
【正确答案】
JDK:java开发工具包。JRE:java运行时环境。
【知 识 点】Java语言及数据库-Java语言基础(1)-Java平台无关性
【题目描述】
什么是Java的平台无关性?
【正确答案】
Java源文件被编译成字节码的形式,无论在什么系统环境下,只要有java虚拟机就能运行这个字节码文件。也就是一处编写,处处运行。这就是java的跨平台性。
【知 识 点】Java语言及数据库-Java语言基础(1)-Java中的环境配置
【题目描述】
在一台电脑上配置java环境,path起什么作用?如何配置?
【正确答案】
path的作用是在DOS环境下,能在任意位置使用JDK目录中bin文件夹中的可执行程序,来编译执行java程序。
在环境变量中找到path变量,把bin文件夹的绝对路径加上即可。
【知 识 点】Java语言及数据库-Java语言基础(1)-Java中的标示符
【题目描述】
什么样的标识符是合法的?
【正确答案】
- 由字母、数字、_和$组成,长度不限。其中字母可以是大写或小写的英文字母,数字为0到9。
- 标识符的第一个字符不能是数字。
- 标识符区分大小写。
- 标识符不能包含空格。
2.02 Java语言基础
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中的基本数据类型
【题目描述】
Java有几种基本数据类型?
【正确答案】
byte,short,int,long,char,boolean,float,double
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中的类型转换
【题目描述】
什么是隐式类型转换?什么是显示类型转换?
【正确答案】
- 当将占位数少的类型赋值给占位数多的类型时,Java自动使用隐式类型转换。
- 当把在级别高的变量的值赋给级别底变量时,必须使用显示类型转换运算。
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中逻辑运算符
【题目描述】
&&和&区别,||和|区别?
【正确答案】
- &&和||是短路与,短路或,当左边的表达式能判断当前结果,则不判断右边的表达式。
- 而& 和|则将两边的表达式都运算完毕后,再算结果。
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中break和continue的区别
【题目描述】
break,continue区别?
【正确答案】
break结束最近的一个循环,continue结束当次循环,进入下次循环。
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中类的命名规则
【题目描述】
类的命名规则是什么?
【正确答案】
- 如果类名使用拉丁字母,那么名字的首写字母使用大写字母。
- 类名最好见名得意,当类名由几个单词复合而成时,每个单词的首写字母使用大写。
【知 识 点】Java语言及数据库-Java语言基础(2)-类体的构成部分
【题目描述】
类体的内容由两部分构成,哪两部分?
【正确答案】
- 一部分是变量的定义,用来刻画属性。
- 另一部分是方法的定义,用来刻画功能。
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中变量
【题目描述】
解释什么是类的成员变量,局部变量,实例成员变量,类成员变量?
【正确答案】
- 变量定义部分所定义的变量被称为类的成员变量。
- 在方法体中定义的变量和方法的参数被称为局部变量。
- 成员变量又分为实例成员变量和类成员变量(static修饰)。
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中的this关键字
【题目描述】
简述this关键字用法。
【正确答案】
- this关键字使用在实例方法中,代表调用该方法的当前对象。
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中方法的返回值类型
【题目描述】
如何确定方法的返回类型?
【正确答案】
方法返回的值的类型就是方法的返回类型,如果无返回值,则返回类型为void。
【知 识 点】Java语言及数据库-Java语言基础(2)-Java中void方法
【题目描述】
返回值为void的方法,可否有return?
【正确答案】
可以。但return后没有任何值。
2.03 Java面向对象
【知 识 点】Java语言及数据库-Java面向对象-Java中类方法和实例方法
【题目描述】
解释什么是类方法,什么是实例方法?
【正确答案】
static修饰的方法是类方法,无static修饰的方法是实例方法。
【知 识 点】Java语言及数据库-Java面向对象-Java中方法和变量的命名规则
【题目描述】
简述方法和变量的命名规则?
【正确答案】
首写字母使用小写,如果由多个单词组成,从第2个单词开始首字母使用大写。
【知 识 点】Java语言及数据库-Java面向对象-Java中方法重载
【题目描述】
什么是方法重载?
【正确答案】
方法重载是指一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同,或者是参数的类型不同。
【知 识 点】Java语言及数据库-Java面向对象-Java中的构造方法
【题目描述】
什么是构造方法?
【正确答案】
构造方法是一种特殊方法,它的名字必须与它所在的类的名字完全相同,并且不返回任何数据类型。
【知 识 点】Java语言及数据库-Java面向对象-Java中的对象创建
【题目描述】
如何创建一个对象?
【正确答案】
使用new 运算符和类的构造方法为对象分配内存,如果类中没有构造方法,系统会调用默认的构造方法。
【知 识 点】Java语言及数据库-Java面向对象-Java中类的构造方法
【题目描述】
系统什么情况下会为类提供构造方法,提供什么样的构造方法?
【正确答案】
如果类中没有构造方法,系统会提供一个默认的构造方法,默认的构造方法是无参的。
【知 识 点】Java语言及数据库-Java面向对象-Java中对象调用变量和方法
【题目描述】
对象如何调用自己的成员变量和方法?
【正确答案】
使用运算符” . ”来调用自己的成员变量和方法。
【知 识 点】Java语言及数据库-Java面向对象-Java类名访问类成员和类方法
【题目描述】
为什么可以直接用类名来访问类成员变量和类方法?
【正确答案】
因为当类被加载到虚拟机的时候,类成员变量就被分配内存,类方法被分配入口地址,所以不用创建对象,可以直接通过类名调用。
【知 识 点】Java语言及数据库-Java面向对象-Java的类变量
【题目描述】
类变量有什么特点?
【正确答案】
一个类的所有对象共享同一个类变量。
【知 识 点】Java语言及数据库-Java面向对象-Java中的类方法
【题目描述】
类方法有什么特点?
【正确答案】
类方法只能调用类变量和类方法。(同一类中)
【知 识 点】Java语言及数据库-Java面向对象-Java中的package关键字
【题目描述】
package关键字有什么作用,使用中注意什么问题?
【正确答案】
package指定一个类所在的包,该语句为源代码第一行。
【知 识 点】Java语言及数据库-Java面向对象-Java中的import
【题目描述】
import关键字有什么作用?
【正确答案】
引入程序中所用到的类。
【知 识 点】Java语言及数据库-Java面向对象-Java中访问权限
【题目描述】
类有几种访问权限?变量和方法有几种访问权限?分别是什么?
【正确答案】
类有两种访问权限:public,友好的。
方法和变量的访问权限:public,protected,友好的,private。
【知 识 点】Java语言及数据库-Java面向对象-Java中的访问权限
【题目描述】
简述java的访问权限。
【正确答案】
- public:公有的,任何类都可以访问。
- protected:受保护的,同一个包的类可以访问。不同包的子类可以访问。
- 友好的:同一个包的类可以访问。
- private:私有的,在同一个类中才能访问。
【知 识 点】java语言及数据库-Java面向对象-Java中方法和变量的继承
【题目描述】
子类能继承父类的哪些变量和方法?
【正确答案】
- 如果子类和父类在同一个包中,那么,子类自然地继承了其父类中不是private 的成员变量作为自己的成员变量,并且也自然地继承了父类中不是private 的方法作为自己的方法。
- 如果子类和父类不在同一个包中,那么,子类继承了父类的protected,public 成员变量做为子类的成员变量,并且继承了父类的protected,public 方法为子类的方法。
【知 识 点】Java语言及数据库-Java面向对象-Java中重写父类方法时对于访问权限的问题
【题目描述】
子类重写父类的方法,可否降低访问权限?
【正确答案】
不可以降低。
【知 识 点】Java语言及数据库-Java面向对象-Java中的final关键字
【题目描述】
final关键字可以用来修饰什么?分别起什么作用?
【正确答案】
- final可以修饰类,这样的类不能被继承。
- final可以修饰方法,这样的方法不能被重写。
- final可以修饰变量,这样的变量的值不能被修改,是常量。
【知 识 点】Java语言及数据库-Java面向对象-Java中的super关键字
【题目描述】
简述super关键字作用?
【正确答案】
- 使用super调用父类的构造方法。
- 使用super操作被隐藏的成员变量和方法。
【知 识 点】Java语言及数据库-Java面向对象-Java中多态
【题目描述】
简述什么是对象上转型?
【正确答案】
假设,A 类是B 类的父类,当我们用子类创建一个对象,并把这个对象的引用放到父类的对象中时,我们称这个父类对象是子类对象的上转型对象。
【知 识 点】Java语言及数据库-Java面向对象-Java中的多态
【题目描述】
上转型对象可以操作什么?不可以操作什么?
【正确答案】
- 上转对象不能操作子类新增的成员变量,失掉了这部分属性,不能使用子类新增的方法,失掉了一些功能 。
- 上转型对象可以操作子类继承或重写的成员变量,也可以使用子类继承的或重写的方法。
【知 识 点】Java语言及数据库-Java面向对象-Java中的抽象类和抽象方法
【题目描述】
什么是抽象类?什么是抽象方法?有什么特点?
【正确答案】
- 用关键字abstract修饰类称为抽象类,abstract类不能用new运算创建对象,必须产生其子类,由子类创建对象。
- 用关键字abstract修饰方法称为抽象方法,abstract方法,只允许声明,而不允许实现。
【知 识 点】java语言及数据库-Java面向对象-Java中类声明接口
【题目描述】
一个类声明实现一个接口,那么这个类需要做什么工作?
【正确答案】
实现接口里所有的方法,并且这些方法的访问权限必须是public。
【知 识 点】Java语言及数据库-Java面向对象-Java中的数组
【题目描述】
简述什么是数组?
【正确答案】
数组是相同类型的数据按顺序组成的一种复合数据类型。通过数组名加数组下标,来使用数组中的数据。下标从 0 开始排序。
【知 识 点】Java语言及数据库-Java面向对象-Java中数组定义
【题目描述】
创建数组是否需要指定数组长度,如何求数组长度?
【正确答案】
必须指定数组长度,数组调用 .length来获取数组长度。
【知 识 点】Java语言及数据库-Java面向对象-Java中字符串如何转换成int/double
【题目描述】
字符串如何转化为int型,double型?
【正确答案】
- Integer.parseInt(“1”);
- Double.parseDouble(“25.45”);
【知 识 点】java语言及数据库-Java面向对象-Java中字符和数字的判定
【题目描述】
如何判断一个字符是不是数字,是不是大写?
【正确答案】
- Character.isDigit(‘a’)
- Character.isUpperCase(‘U’)
【知 识 点】Java语言及数据库-Java面向对象-Java中的日期类
【题目描述】
已知一个java.util.Date对象,如何格式化成如下格式 YYYY-MM-dd hh:mm:ss
【正确答案】
SimpleDateFormat formate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
formate.format(new Date()));
【知 识 点】Java语言及数据库-Java面向对象-Java中生成随机数
【题目描述】
如何生成一个0-100的随即整数?
【正确答案】
(int)(Math.random()*100)
【知 识 点】Java语言及数据库-Java面向对象-Java中的异常处理机制
【题目描述】
简述java异常处理的机制?
【正确答案】
当所调用的方法出现异常时,调用者可以捕获异常使之得到处理;也可以回避异常。
【知 识 点】Java语言及数据库-Java面向对象-Java中的try、catch、throw、throws、finally
【题目描述】
简述如下关键字用途try、catch、throw、throws、finally
【正确答案】
- try:保护代码,如果try中某行代码出现异常,则try中代码不再继续执行。
- catch:捕获异常,当try中出现异常,则catch负责捕获异常,并处理。
- throw:抛出异常。
- throws:声明异常。
- finally:无论try中是否出现异常,finally一定执行。
【知 识 点】Java语言及数据库-Java面向对象-Java中的LinkedList和ArrayList
【题目描述】
LinkedList和ArrayList区别?
【正确答案】
- LinkedList底层通过链式存储结构实现。
- ArrayList底层通过数组实现。
【知 识 点】java语言及数据库-Java面向对象-Java中的I/O流
【题目描述】
什么是I/O流,有什么作用?
【正确答案】
指数据输入输出的流, I/O 流提供一条通道程序,可以使用这条通道把源中的字节序列送给目的地。
【知 识 点】Java语言及数据库-Java面向对象-Java中的查看文件的大小、路径、可读性
【题目描述】
如何查看一个文件的大小,绝对路径,是否可读?
【正确答案】
- File file = new File(“e://a.txt”);
- file.length();
- file.getAbsolutePath();
- file.canRead();
【知 识 点】Java语言及数据库-Java面向对象-Java中多线程
【题目描述】
实现多线程的两种方法?
【正确答案】
- 从Java.lang.Thread类派生一个新的线程类,重写它的run()方法。
- 实现Runnable接口,重写Runable接口中的run()方法。
【知 识 点】Java语言及数据库-Java面向对象-Java中线程的生命周期
【题目描述】
简述一个线程的生命周期?
【正确答案】
新建---运行---中断---死亡
【知 识 点】Java语言及数据库-Java面向对象-Java中的运行线程
【题目描述】
如何让一个准备就绪的线程运行?
【正确答案】
调用线程的start方法让一个处于准备就绪的状态的线程运行。
【知 识 点】Java语言及数据库-Java面向对象-Java中的线程休眠
【题目描述】
如何让一个线程休眠1000毫秒?
【正确答案】
调用线程的sleep方法,参数为1000。
⚠️注意 ~
💯本期内容就结束了,如果内容有误,麻烦大家评论区指出!
如有疑问❓可以在评论区留言💬或私信留言💬,尽我最大能力🏃♀️帮大家解决👨🏫!
如果我的文章有帮助到您,欢迎打赏✔️鼓励博主🏃,您的鼓励是我分享的动力🏃🏃🏃~