欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java面向对象编程语法:Object类

程序员文章站 2022-06-16 16:14:11
第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