笔试强训 day2

选择题

 解析:题目中 “admin” 指向堆内存字符串常量池中“abmin”的地址,而userld.toLowerCase() 是以一个新的字符串对象返回的,所以两者的地址不同!

补充:

“==” 和 equals 的区别:

1) "==" 比较的是两个变量的数值是否相等,对于基本类型,比较的就是具体保存的数值,对于引用类型比较的就是两个引用类型的地址是否相同。

2)equals 方法是 Object 类的默认方法,自定义类型覆写 equals 方法可以按照属性值来比较两个对象的内容是否相等。


  

 Test test = null;//表示该引用不指向任何对象

test.hello();

hello() 方法是一个静态方法,而静态方法的调用不依赖于任何对象,而 test 不指向任何对象,所以编译通过且正常运行

补充:

static 修饰方法,称为类方法 / 静态方法,与具体的对象无关,直接通过类名称进行访问。


 

 super 关键字:如果想要在子类中调用被覆盖的父类中的同名属性时,使用 super 关键字,明确表明直接从父类中寻找同名属性。要求子类在调用父类的构造方法时,super() 必须放在子类构造方法的首行。

this:表示当前对象的引用

1)this 修饰属性,明确表示直接从类中寻找变量,打破就近匹配原则

2)this 修饰方法:

2.1  this 调用构造方法    this(构造方法参数)

      a. this 的构造方法调用必须放在首行

      b. this 的构造方法调用必须是线性的,不能成“环”

2.2  this 调用普通成员方法    this.方法名称(对应参数)

3)this 表示当前对象的引用   当前成员方法或属性是通过哪个对象调用的, this 就代表谁

D选项:this 表示当前对象的引用,而  static 修饰的方法是静态方法,静态方法的调用不依赖于对对象,所以this() 和 super() 不可以在 static 环境中使用


 A. abstract 关键字定义的类称为抽象类,abstract 修饰的方法称为抽象方法,但是 abstract 不能修饰字段。

B. 抽象方法所在的类一定是抽象类,抽象方法没有方法体,也就是说声明抽象方法没有大括号


 

 A. 类中的构造方法可以省略,省略后编译器会默认提供一个不带参数的构造方法

B. 构造方法必须和类同名,方法也可以和类同名,构造方法也算方法。

D.一个类可以定义多个构造方法(无参,有参),并且构造方法都可以发生重载


 B.所有对成员变量的赋值必须放在方法的内部

C. 非抽象方法需要有方法体(大括号)

D. 抽象方法没有方法体(没有大括号)


编程题:

 思路:非递增:arr[i] >= arr[i +1]     非递减 arr[i] < = arr[i + 1];

            递增 : arr[i] < arr[i + 1]         递减 arr[i] > arr[i + 1];

1.当 arr[i] < arr[i + 1] 进入非递减序列判断,如果arr[i] <= arr[i +1] j则进行下一个数的判断,如果arr[i] >arr[i + 1] 时 则count ++

2.当 arr[i] > arr[i + 1] 进入非递增序列判断,如果arr[i] >= arr[i +1] j则进行下一个数的判断,如果arr[i] < arr[i + 1] 时 则count ++

3.当 arr[i] == arr[i + 1] 时,继续下一个数的判断,因为相等既可以属于非递增序列,也可以属于非递减序列

代码实现:


 

 思路:先将整个字符串逆置,在遍历字符串,找出每个单词,对单词进行逆置

 代码实现:

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值