java面试题
Posted li-ding-yong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java面试题相关的知识,希望对你有一定的参考价值。
1、数组有没有length()这个方法?String有没有length()这个方法?
数组只有length属性,表示的是数组的长度。而且这个属性可以理解为止一个常量,一旦数组被产生,我们可以得到length的值,但不能改变。
返回的是字符串的长度。也不能修改。
2、抽象类和接口有什么区别?
相同点:
代表系统的抽象层
都能包含抽象方法
用于描述系统提供的服务,不必提供具体实现
不同点:1:在抽象类中可以为部分方法提供默认实现,而接口中只能包含抽象方法
抽象类便于复用,接口便于代码维护
2:一个类只能继承一个直接的父类,但可以实现多个接口
3、重写和重载的区别?
重写:是子类的方法覆盖父类的方法,要求方法名和参数都相同 。
重载:是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,和返回值无关。
4、请你写出你理解的Java面向对象的三大特性
(1):继承就是从已有的类继承信息创建新类的过程,被继承的类称为父类,继承的类叫做子类。子类可以全盘接受父类的所有属性和方法(甚至是private修饰的,也可以继承,但是不能在父类之外访问,提供共有的访问方法(比如封装set()、get())就可以用)。
(2):封装就是将属性私有化,提高安全性。
封装的步骤:1:将属性私有化 private
private String sex;
2:编写setter方法,可以针对用户输入的值进行判断
3:编写getter方法,来获取值
(3):多态:同样的一种物质,在不同条件下,所呈现出来的状态是不同的。
语法:父类名 父类引用 = new 子类类名()
5、写出异常的语法(throw和try):
try {
//可能会出现的异常
}catch(异常类型){
}
throw Exception 声明异常
if("男".equals(sex)||"女".equals(sex)){
this.sex = sex;
}else{ //抛出异常
try{
throw new MyException("性别不正确");
}catch(Exception e){
e.printStackTrace();
}
}
}
以上是关于java面试题的主要内容,如果未能解决你的问题,请参考以下文章
2020年1-6月份Java面试题总结,20多类1100道面试题含答案解析