Java作业6-Java类的基本概念三

编程1

import java.util.*;

abstract class Rodent//抽象类
{
	public abstract String findFood();//抽象方法
	public abstract String chewFood();
}
class Mouse extends Rodent
{
	public String findFood()
	{	return "大米";	}
	public String chewFood()
	{	return "Mouse"+"吃"+findFood();	}
}
class Gerbil extends Rodent
{
	public String findFood()
	{	return "种子";	}
	public String chewFood()
	{	return "Gerbil"+"吃"+findFood();	}
}
class Hamster extends Rodent
{
	public String findFood()
	{	return "坚果";	}
	public String chewFood()
	{	return "Hamster"+"吃"+findFood();	}
}
public class Main{
	public static void main(String[] args)
	{
		Rodent[] rodents = new Rodent[3];
		rodents[0] = new Mouse();
		rodents[1] = new Gerbil();
		rodents[2] = new Hamster();
		System.out.println(rodents[0].chewFood());
		System.out.println(rodents[1].chewFood());
		System.out.println(rodents[2].chewFood());
	}
}
Mouse吃大米
Gerbil吃种子
Hamster吃坚果

编程2

用接口改造上一题,实现要求的所有功能

接口详细教程Java 接口 | 菜鸟教程 (runoob.com)

import java.util.*;

interface Rodent
{
	public String findFood();
	public String chewFood();
}
class Mouse implements Rodent
{
	public String findFood()
	{	return "大米";	}
	public String chewFood()
	{	return "Mouse"+"吃"+findFood();	}
}
class Gerbil implements Rodent
{
	public String findFood()
	{	return "种子";	}
	public String chewFood()
	{	return "Gerbil"+"吃"+findFood();	}
}
class Hamster implements Rodent
{
	public String findFood()
	{	return "坚果";	}
	public String chewFood()
	{	return "Hamster"+"吃"+findFood();	}
}
public class Main{
	public static void main(String[] args)
	{
		Rodent[] rodents = new Rodent[3];
		rodents[0] = new Mouse();
		rodents[1] = new Gerbil();
		rodents[2] = new Hamster();
		System.out.println(rodents[0].chewFood());
		System.out.println(rodents[1].chewFood());
		System.out.println(rodents[2].chewFood());
	}
}
Mouse吃大米
Gerbil吃种子
Hamster吃坚果

 

编程3

import java.util.*;

interface Rodent
{
	public String findFood();
	public String chewFood();
}
interface Fly
{
	public String fly();
}
class Mouse implements Rodent
{
	public String findFood()
	{	return "大米";	}
	public String chewFood()
	{	return "Mouse"+"吃"+findFood();	}
}
class Gerbil implements Rodent
{
	public String findFood()
	{	return "种子";	}
	public String chewFood()
	{	return "Gerbil"+"吃"+findFood();	}
}
class Hamster implements Rodent
{
	public String findFood()
	{	return "坚果";	}
	public String chewFood()
	{	return "Hamster"+"吃"+findFood();	}
}
class Pteromyini implements Rodent,Fly
{
	public String findFood()
	{	return "野果";	}
	public String chewFood()
	{	return "Pteromyini"+"吃"+findFood();	}
	public String fly()
	{	return "会飞";	}
}
public class Main{
	public static void main(String[] args)
	{
		Rodent[] rodents = new Rodent[4];
		rodents[0] = new Mouse();
		rodents[1] = new Gerbil();
		rodents[2] = new Hamster();
		rodents[3] = new Pteromyini();
		System.out.println(rodents[0].chewFood());
		System.out.println(rodents[1].chewFood());
		System.out.println(rodents[2].chewFood());
		System.out.println(rodents[3].chewFood()+" "+((Pteromyini)rodents[3]).fly());
	}
}
Mouse吃大米
Gerbil吃种子
Hamster吃坚果
Pteromyini吃野果 会飞

 

编程4

这道题给我看懵了,直接上AI

import java.util.Date;

public class MaxFinder {

    // 实现找到Comparable对象数组中的最大元素的方法
    public static Comparable max(Comparable[] a) {
        if (a == null || a.length == 0) {
            return null; // 返回null表示数组为空或未初始化
        }
        Comparable max = a[0]; // 假设第一个元素是最大的
        for (int i = 1; i < a.length; i++) {
            if (max.compareTo(a[i]) < 0) {
                max = a[i]; // 发现更大的元素,更新max
            }
        }
        return max;
    }

    public static void main(String[] args) {
        // 测试字符串数组
        String[] strings = {"apple", "orange", "banana", "zoo", "cherry", "date", "fig", "grape", "honeydew", "kiwi"};
        System.out.println("最大的字符串: " + max(strings));

        // 测试整数数组
        Integer[] integers = {20, 35, 1, 67, 55, 23, 99, 18, 42, 88};
        System.out.println("最大的整数: " + max(integers));

        // 测试日期数组
        Date[] dates = new Date[10];
        for (int i = 0; i < dates.length; i++) {
            // 创建从现在开始的不同天的日期
            dates[i] = new Date(System.currentTimeMillis() + i * 24 * 60 * 60 * 1000);
        }
        System.out.println("最新的日期: " + max(dates));
    }
}
最大的字符串: zoo
最大的整数: 99
最新的日期: Mon Apr 22 21:35:46 CST 2024

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/559614.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

shm 共享内存

shm 共享内存 0,命令1&#xff0c;了解&#xff1a;2&#xff0c;程序: 0,命令 ipcs 查看分配的共享内存ipcrm -m shmid 删掉分配的共享内存1&#xff0c;了解&#xff1a; 1&#xff09;&#xff0c;进程通信的一种 2&#xff09;&#xff0c;地址映射出来后&#xff0c;就不…

C语言数据结构之顺序表

目录 1.线性表2.顺序表2.1顺序表相关概念及结构2.2增删查改等接口的实现 3.数组相关例题 1.线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性&#xff08;数据类型相同&#xff09;的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构&#xff…

Github 2024-04-20 开源项目日报 Top10

根据Github Trendings的统计,今日(2024-04-20统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量非开发语言项目2Python项目2Swift项目2HTML项目1CSS项目1Go项目1C项目1C++项目1Rust项目1编程面试大学:成为软件工程师的全面学习计划 创建周期…

半导体材料(三)——P-N结和金属-半导体接触

本篇为西安交通大学本科课程《电气材料基础》的笔记。 本篇为这一单元的第三篇笔记&#xff0c;上一篇传送门。 p-n结和金属-半导体接触 p-n结 无偏压开路状态 如图a所示&#xff0c;左边是n型掺杂&#xff0c;右边是p型掺杂&#xff0c;在n区和p区之间形成了一个不连续的…

WARNING: No swap limit support——查看docker状态时提示警告

环境&#xff1a;Ubuntu 20.04 1、警告详情 执行命令 service docker status如下图 2、解决办法 2.1 修改文件 执行命令 vim /etc/default/grub在GRUB_CMDLINE_LINUX中追加cgroup_enablememory swapaccount1&#xff0c;如下&#xff1a; # If you change this file…

【蓝桥杯嵌入式】蓝桥杯嵌入式第十四届省赛程序真题,真题分析与代码讲解

&#x1f38a;【蓝桥杯嵌入式】专题正在持续更新中&#xff0c;原理图解析✨&#xff0c;各模块分析✨以及历年真题讲解✨都已更新完毕&#xff0c;欢迎大家前往订阅本专题&#x1f38f; &#x1f38f;【蓝桥杯嵌入式】蓝桥杯第十届省赛真题 &#x1f38f;【蓝桥杯嵌入式】蓝桥…

攻防世界18.fileclude

18.fileclude include函数&#xff1a;包含并执行变量或者文件。 if&#xff1a;是if语句用来判断。 isset&#xff1a;判断变量是否存在&#xff0c;值是否为NULL。 $_GET&#xff1a;接收表单提交数据&#xff0c;并把数据附加到url链接当中。 逻辑运算符&&&#xff…

【提示学习论文】BlackVIP: Black-Box Visual Prompting for Robust Transfer Learning论文原理

BlackVIP: Black-Box Visual Prompting for Robust Transfer Learning BlackVIP:稳健迁移学习的黑盒视觉提示 问题 黑盒白盒&#xff1f; 黑盒和白盒的概念与对预训练模型内部参数的了解程度相关。黑盒指的是对预训练模型的参数和结构缺乏详细了解&#xff0c;通常只能通过使…

NAT基本配置

配置IP完成及缺省的路由如下&#xff1b; 此时R1pingISP是ping不通的&#xff0c;因为缺省是可以将数据传给R3&#xff0c;但是R3传不回去&#xff0c;知道目标IP地址但因其是私有内部IP&#xff0c;而自己的是公有IP&#xff0c;所以传不过去&#xff0c;此时就需要R2这个边界…

2024 发布Maven项目到中央仓库

注册sonatype账号 Maven中央仓库并不支持直接发布jar包&#xff0c;sonatype是其指定的第三方仓库之一&#xff0c;发布到此的项目会被定时同步到中央仓库 官方教程地址&#xff1a;https://central.sonatype.org/register/central-portal/ 访问网址&#xff1a;https://centra…

文件操作和IO

1.认识文件 我们先来认识狭义上的⽂件(file)。针对硬盘这种持久化存储的I/O设备&#xff0c;当我们想要进⾏数据保存时&#xff0c;往往不是保存成⼀个整体&#xff0c;⽽是独⽴成⼀个个的单位进⾏保存&#xff0c;这个独⽴的单位就被抽象成⽂件的概念&#xff0c;就类似办公桌…

# 从浅入深 学习 SpringCloud 微服务架构(三)注册中心 Eureka(2)

从浅入深 学习 SpringCloud 微服务架构&#xff08;三&#xff09;注册中心 Eureka&#xff08;2&#xff09; 段子手168 1、搭建 EurekaServer 注册中心&#xff0c;使用 Eureka 的步骤&#xff1a; 1&#xff09;搭建 EurekaServer 创建工程&#xff0c;导入依赖坐标&…

Python-VBA函数之旅-globals函数

目录 一、globals函数的常见应用场景&#xff1a; 二、globals函数与locals函数对比分析&#xff1a; 1、globals函数&#xff1a; 1-1、Python&#xff1a; 1-2、VBA&#xff1a; 2、推荐阅读&#xff1a; 个人主页&#xff1a;https://blog.csdn.net/ygb_1024?spm101…

基于springboot+vue+Mysql的广场舞团管理系统

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…

牛客小白月赛91

A.Bingbong的化学世界 链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网 来源&#xff1a;牛客网 时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C 262144K&#xff0c;其他语言524288K 64bit IO Format: %lld 题目描述 &#x1f319;“上…

AndroidStudio右下角显示内存使用情况

目录 一.具体效果 二.4.0以下版本 三.4.0以上版本 四.增加内存配置 一.具体效果 二.4.0以下版本 1.打开 Android Studio. 2.进入设置界面。点击 Android Studio 左上角的“File”&#xff0c;然后选择“Settings” 3.在设置界面中&#xff0c;选择“Appearance & Beha…

关于图像YUV格式分类和排布方式的全学习

【学习笔记】关于图像YUV格式分类和排布方式的全学习_yuv图像-CSDN博客 下图是将多个yuv420p图像(A和B)&#xff0c;拼接成一个画面的思路 A大小:416*64 B大小:416*208 将A和B合并到一个416*416的尺寸上&#xff0c;代码如下 //整合char * ptd;ptd (char * ) malloc (416*41…

手把手教你实现 C 语言的函数多参默认值 「下」

以下内容为本人的学习笔记&#xff0c;如需要转载&#xff0c;请声明原文链接 微信公众号「ENG八戒」https://mp.weixin.qq.com/s/ifnDcV7AKrh6eVihVK9l5A 本文上接《手把手教你实现 C 语言的函数多参默认值 上》&#xff0c;下文提及的一些概念来源于上文&#xff0c;为方便阅…

使用LLM-API开发应用-DataWhale笔记

调用API 先使用一个例子 from openai import OpenAI ​ client OpenAI(# This is the default and can be omittedapi_keyos.environ.get("OPENAI_API_KEY"), //这个在环境env中 ) ​ completion client.chat.completions.create(# 调用模型&#xff1a;ChatGPT-…

【目标检测】YOLO系列-YOLOv1 理论基础 通俗易懂

为方便大家理解YOLO的原理&#xff0c;这里将YOLOv1的部分内容基础内容进行用比较直白的话和例子进行阐述&#xff0c;为后续大家学习YOLO作为铺垫。 1、模型所干的活 工作中&#xff0c;大家经常将 Word 文档 上传到某转换器&#xff0c;然后转换输出为PDF文档。目标检测中我…