API_Object&String1

1.读下列程序,对类型转换操作正确的是
class A{}
class B extends A{}
class C extends A{}
A o1 = new A();
A o2 = new B();
A o3 = new C();
A . A a = o1; B b = o2; C c = o3;
B. A a = o1 ; B b = (B) o2; C c = © o3;
C. A a = (A)o1; B b = (B)o3; C c = ©o2;
D. A a = (A)o2; B b = (B)o1; C c = ©o3;//a = o2向上转型,b = (B)o1错误,o1为A类型,进行向下强转必须保证该对象是由向上造型创建的; c = o3正确。

2.在Java中, 负责对字节码解释执行的是
A.应用服务器
B.垃圾回收器
C.虚拟机 javac(编译器)先将.java 源文件 编译成 .class字节码文件,然后虚拟机再将.class字节码 解释成机器识别的机器语言
D.编译器

  1. 下列哪个不是Object类的方法
    A) split()//String[] split()根据给定正则表达式的匹配拆分此字符串
    B) equals()
    C) toString()
    D) hasNext() boolean hasNext()是Iterator(迭代器)类的方法。

4.下列程序运行结果是
public class Test {
public static void main(String args[]){
String str=new String(“huacit”);
char[]ch={‘x’,‘y’,‘z’};
Test t = new Test();
t.change(str,ch);
System.out.print(t .str+“and”);//此处 的t 是无法调用str的,str是局部变量。去掉就可
System.out.print(t.ch);}
public void change(String str,char ch[]){
str=“华创理想”;
ch[0]=‘w’; }
}
字符串之间没有空格,如果忽略空格,选C
A.huacit and xyz
B.华创理想 and xyz
C.huacit and wyz
D.华创理想and w yz
在这里插入图片描述

5.请看下列代码
public class Member{
private Long userId;
private String nickName;
//以下是getter和sett方法 ……
}
main方法中的代码:
Member m1=new Member();
m1.setUserId(new Long(100001));
m1.setNickName(“mick”);
Member m2=new Member();
m2.setUserId(new Long(100001));
m2.setNickName(“mick”);
System.out.println(m1==m2); // 堆中地址不一样
System.out.println(m1.equals(m2));//因为Member 类中没有重写equals()
控制台的输出结果是:
A.true false
B.false true
C.false false
D.true ture

简答题
1.String str=new String(“abc”)创建了几个对象?在上述创建过对象后的基础上在创建
String str1=new String(“abc”)一共创建了几个对象?并说明原因

  • 1)2个对象,在常量池中创建abc,再把abc在堆区中的地址给到字符串对象创建字符串对象。
  • 2)1个对象。此时常量池中已经有abc,直接给地址给str1对象创建。

2.==和equest在做比较时的区别?

答: == 既可以比较 基本数据类型,又可以比较引用类型。
当== 两边是基本数据类型时,比较的是值本身。当 == 两边是引用类型时比较的是引用地址值

equals() 只能比较引用类型。Object中的equals()的作用和 == 相同,比较的都是引用类型的地址值,若想比较对象的内容,对象所在的类必须重写equals()方法。

== 和 equals()的区别?

  • ① == 既可以比较基本数据类型,也可以比较引用类型。
  • 当两边的操作数是基本数据类型时,比较的是(值本身)内容。当两边的操作数时引用类型时,比较的是引用的地址值。
  • ② equals()只能比较引用类型。Object 类中的equals()使用的是"== "(作用和==相同),比较的是引用类型的地址值,
  • 如果重写之后,按照重写时定义的规则进行比较,比较的是对象的内容
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值