Java面向对象编程语法:Object类
程序员文章站
2022-03-23 22:16:54
第1关:Object类任务描述本关任务:掌握Object类及Object类的一些常用方法。编程要求请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:Demo类和Person类已经写好,在测试类中创建Demo类对象d1,传入输入值num1, d1调用toString方法并打印输出该值;创建Demo类对象d2,同样传入输入值num1,打印判断d1和d2是否相等(实际是比较地址);创建Person类对象p,传入输入值num2,打印判断d1和p是否相等(实...
第1关:Object类
任务描述
本关任务:掌握Object类及Object类的一些常用方法。
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:
Demo类和Person类已经写好,在测试类中创建Demo类对象d1,传入输入值num1, d1调用toString方法并打印输出该值;
创建Demo类对象d2,同样传入输入值num1,打印判断d1和d2是否相等(实际是比较地址);
创建Person类对象p,传入输入值num2,打印判断d1和p是否相等(实际是比较地址);
测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。
测试输入:
100
100
预期输出:
Demo:100
true
false
开始你的任务吧,祝你成功!
package case1;
import java.util.Scanner;
public class ObjectTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 = sc.nextInt();
int num2 = sc.nextInt();
// 在测试类中创建Demo类对象d1,传入输入值num1, d1调用toString方法并打印输出该值
// 创建Demo类对象d2,同样传入输入值num1,打印判断d1和d2是否相等(实际是比较地址)
/********* Begin *********/
Demo d1=new Demo(num1);
System.out.println(d1.toString());
Demo d2=new Demo(num1);
System.out.println(d1.equals(d2));
/********* End *********/
// 创建Person类对象p,传入输入值num2,打印判断d1和p是否相等(实际是比较地址)
/********* Begin *********/
Person p=new Person(num2);
System.out.println(d1.equals(p));
/********* End *********/
}
}
class Demo {
private int num;
public Demo(int num) {
this.num = num;
}
public boolean equals(Object obj) // Object obj = new Demo()
{
if (!(obj instanceof Demo)) // 判断obj是否和Demo是同类
return false;
Demo d = (Demo) obj; // 将父类的引用(Object)向下转换为子类(Demo)
return this.num == d.num;
}
public String toString() {
return "Demo:" + num; // 返回对象的值(每一个对象都有自己的特定的字符串)
}
}
class Person {
private int num;
public Person(int num) {
this.num = num;
}
}
本文地址:https://blog.csdn.net/m0_46719152/article/details/110006774