java面试题3

抽象的(abstract)是否同时是静态的(static),是否可同时是本地方法(native),是否可同时被synchronized

都不能,抽象方法需要没子类重写的,静态方法无法被重写,因此二者是矛盾的。本地方法是由本地代码(如c代码)实现的方法,而抽象方法是没有实现的,也是矛盾的。synchronized和方法的实现细节有关,抽象方法不涉及实现细节,因此也是矛盾的。

阐述静态变量和实例变量的区别?

静态变量: 是被static修饰符修饰的变量,也称作类变量,它属于类,不属于类的任何一个对象,一个类不管创建多少对象,静态变量在内存中仅有一个拷贝。
实例变量: 必须依赖某一实例,需要先创建对象然后通过对象来访问到它。静态变量可以实现让多个对象共享内存。

==和equals的区别?

equals和=的最大区别是一个是方法,一个是运算符。
*==:如果比较的对象是基本数据类型,则比较数值是否相等;如果比较的是引用数据类型,则比较的是对象的地址是否相等。
equals(): 用来比较两个对象内容是否相等
注:equals方法不能用于基本数据类型的变量,如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址。另外,如果a.equals(b)==true,那么对象a和对象b的哈希值是相同,但是如果哈希值相同,对象不一定相同。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值