JAVA基础学习

一.java基础

1.为什么java可以一次编码到处运行

答:.java文件进过编译器编译生成.class文件,JVM在不同平台会将.class文件翻译成相应的机器码。从而实现一次编码到处运行

2.一个java文件可以含有多个类吗

答:可以,但是只能含有一个public类,同时这个类名必须与java文件名一致

3.说一说你对Java访问权限的了解

四种访问权限:private,defalut,protected,public
修饰类时:
public:任意包下的任意类访问
defalut:本包下的类访问

修饰变量和方法时:
public :任意包任意类
protected:包内和子类
defalut:包内
private:本类

4.介绍一下Java的数据类型

java数据类有两类:基础数据类型和引用数据类型
1.基础数据类型
整数型:byte/8,short/16,int/32,long/64
浮点型:float/32,double/64
字符型:char/16
布尔型:boolean/~

int类型的范围:-2^31~ 2^31-1

2.引用数据类型
引用类型就是对一个对象的引用,根据引用对象类型的不同,可以将引用类型分为3类,即数组、类、接口类型。引用类型本质上就是通过指针,指向堆中对象所持有的内存空间,只是Java语言不再沿用指针这个说法而已。

5.面向对象的三大特征

继承,封装,多态
说一下你对多态的理解:
BaseClass obj = new SubClass()
obj编译时是BaseClass,而在运行时是subClass,当运行时调用obj的方法时,表现的可能是不同子类的特征。这就出现了,相同变量调用同一个方法时,呈现出不同的表现,这就是多态

6.介绍一下Object类中的方法

Class<?> getClass():返回该对象的运行时类。
boolean equals(Object obj):判断指定对象与该对象是否相等。
int hashCode():返回该对象的hashCode值。
String toString():返回该对象的字符串表示

另外,Object类还提供了wait()、notify()、notifyAll()这几个方法,通过这几个方法可以控制线程的暂停和运行。

Object类还提供了一个finalize()方法,当系统中没有引用变量引用到该对象时,垃圾回收器调用此方法来清理该对象的资源。并且,针对某一个对象,垃圾回收器最多只会调用它的finalize()方法一次。

7.hashCode()和equals()的关系

在使用集合时例如hashSet,判断一个元素是否相等,首先使用hashCode计算hash值,如果相等则会使用equals判断是否相等。所以在重写hashCode和equals方法时一定要保证以下原则
1.equals相等时,hashCode一定相等
2.hashCode不相等时,equals一定不相等

8. ==和equals()有什么区别?

答:基础数据类型==比较的是值是否相等,引用数据类型 ==比较的是地址是否相等。
equals如果没有重写,则和 == 的含义相同。

9.StringBuffer和StringBuilder有什么区别?

StringBuffer是线程安全的
StringBuilder是线程不安全的
StringBuilder的性能好于StringBuffer

10.使用字符串时,new和""推荐使用哪种方式?

new String(“hello”)会在常量池和堆中分别创建对象,总共产生两个对象。
"hello"则只会在常量池中创建这个对象,总共产生一个对象。
推荐使用"hello"方式

11.抽象类和接口的设计区别

接口设计的目的:自上而下的设计,对类行为的一种约束,只是约束有无,而不约束内容
抽象类设计的目的:自下而上的设计,代码复用

12.java异常体系

java异常体系

13.深拷贝和浅拷贝

浅拷贝:会new一个新的对象,基本数据类型的属性会复制其值,引用类型的属性只是传了一个引用,地址是相同的。

深拷贝:会new一个新的对象,对象的基本数据类型属性和引用数据类型属性都会新生成一份新的。

深拷贝和浅拷贝

14.AQS

AQS详解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值