首页 > 其他分享 >封装的练习题目1

封装的练习题目1

时间:2024-09-24 19:44:57浏览次数:1  
标签:题目 String variety 练习 心情 fell 封装 public name

1.使用面向对象的思想,编写自定义描述狗的信息。设定属性包括:品种,年龄,心 情,名字;方法包括:叫,跑。
要求:
1)设置属性的私有访问权限,通过公有的 get,set 方法实现对属性的访问
2)限定心情只能有“心情好”和“心情不好”两种情况,如果无效输入进行提示, 默认设置“心情好”。
3)设置构造函数实现对属性赋值
4)叫和跑的方法,需要根据心情好坏,描述不同的行为方式。
编写测试类,测试狗类的对象及相关方法(测试数据信息自定义)
运行效果图:

首先先构造一个狗类,有上面的变量和方法

class Dog {
    private String variety;
    private int age;
    private String fell;
    private String name;

    public Dog() {

    }

    public Dog(String variety, int age, String fell, String name) {
        this.variety = variety;
        this.age = age;
        setFell(fell); //因为题目要求只有两种心情值,将心情的判断的语句写在setFell中,这里直接调用setFell方法
        this.name = name;
    }

//4)叫和跑的方法,需要根据心情好坏,描述不同的行为方式。
    public void Call() {
        if("心情好".equals(fell)){
            System.out.println("名字叫"+name+"的"+variety+fell+",开心的汪汪叫");
        }else{
            System.out.println("名字叫"+name+"的"+variety+fell+",伤心的呜呜叫");
        }
    }

    public void Run() {
        if("心情好".equals(fell)){
            System.out.println("名字叫"+name+"的"+variety+fell+",开心的围着主人身边转");
        }else{
            System.out.println("名字叫"+name+"的"+variety+fell+",伤心的一动不动");
        }

    }

    public String getVariety() {
        return variety;
    }

    public void setVariety(String variety) {
        this.variety = variety;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getFell() {
        return fell;
    }

    public void setFell(String fell) {
       this.fell=fell;

    }

    public void show() {
        Run();
        Call();
    }
}

2)限定心情只能有“心情好”和“心情不好”两种情况,如果无效输入进行提示, 默认设置“心情好”。
编写心情值的判断语句

public void setFell(String fell) {
        if ("心情好".equals(fell) || "心情不好".equals(fell)) {
            this.fell = fell;
        } else {
            this.fell="心情好";
            System.out.println("输入信息错误,这只狗狗今天心情很好!");
        }

    }

编写测试类

public class Test1 {
    public static void main(String[] args) {
        Dog d1 = new Dog("贵宾犬",2,"心情非常好","甜心");
        d1.show();
        System.out.println("======================================");
        Dog d2 = new Dog("边牧", 3, "心情不好", "白球");
        d2.show();
    }
}

标签:题目,String,variety,练习,心情,fell,封装,public,name
From: https://www.cnblogs.com/ndmtzwdx/p/18429881

相关文章

  • SQL面试常见题目
    SQL面试常见题目涉及多个方面,包括数据查询、数据操作、表的设计与优化等。以下列举一些经典的SQL面试题目,并附上解析答案:1.查询一张表中重复的数据题目:给定一个表employees,包含id,name,salary列。如何查找表中重复的name值?SELECTname,COUNT(*)ascountFROMem......
  • 数据库练习
    1、查询所有学生信息,显示的内容包含:编号,姓名,班级,性别,出生日期,年龄,成绩SELECTid,NAME,clazz,gender,score,bir,TIMESTAMPDIFF(YEAR,bir,NOW())ageFROMinfo;2、查询每个班的学生人数各有几人SELECTclass,COUNT(*)ASstudent_numberFROMinfoGROUPBYclass;......
  • E33.【C语言】数据在内存中的存储练习集(未完)
    1.求下列代码的打印结果#include<stdio.h>intmain(){ chara=-1; signedcharb=-1; unsignedcharc=-1; printf("a=%d,b=%d,c=%d",a,b,c); return0;}答案速查分析之前讲过,char在VS中默认为signedchar,则a和b的打印结果应该是一样的存储范围:si......
  • el-form封装
    <template><el-formref="elform":model="formData":inline="inline":label-width="formLabelWidth":size="size"v-bind="$attrs":rules="rules"......
  • 第二天:Java练习
    1,BMI体质指数测试BMI=体重(kg)/(身高*身高),接收输入的身高和体重,然后输出结果:过轻:低于18.5正常:18.5~22.9偏胖:23~24.9肥胖:25~29.9重度肥胖:高于30packagejava4;importjava.util.Scanner;publicclasspractise{publicstaticvoidmain(String[]args){......
  • Java基础练习(每日五题)
    1,通过代码编写,输一段话:“今天是学习的第一天”packagejava4;publicclasspractise{publicstaticvoidmain(String[]args){System.out.println("今天是学习的第一天");}}2,拼接打印:“XXX:我已经学习了JavaX年,我期望的工资是XXX”packagejava4;......
  • 网络编程练习:华清速递
    【1】服务器代码#include"head.h"fd_setrdfs;intnum=1;sqlite3*db;sqlite3*mdb;intinit_server(intport);//初始化服务器voidRegister(PACK*msg);//注册//void*handler(void*arg);//线程函数voidLogin(PACK*msg);//上线voidSend_out......
  • shell脚本练习题
    1.打印输出1到100的数字 #!/bin/bashfornumin{1..100}doecho$numdone2.计算100以内偶数的和#!/bin/bashsum=0fornumin{1..100}doif[$[$num%2]-eq0];thendone3.用户交互,判断文件类型    让用户输入一个目录名 1)如果没有该文件,则......
  • [题解] ICPC网络预选赛 2024 第二场 E Escape (含题目翻译)
    [题解]ICPC网络预选赛2024第二场EEscape(含题目翻译)tag:图论、BFS、最短路题干为原文DeepL翻译题目描述Sneaker在一个巨大的迷宫中醒来,现在他想逃离这个迷宫。通过迷宫中每个房间的地图,Sneaker了解了迷宫的结构。迷宫由......
  • vulnhub KioptrixVM3 靶场练习
    靶机下载地址:https://download.vulnhub.com/kioptrix/KVM3.rar一.安装下载完虚拟机直接打开这个文件就可以靶机的网络设为nat确保和kali一个网段正常启动是这样二.信息收集kali的ip为:192.168.231.133kali扫描iparp-scan-l确定目标主机ip为192.168.231.183......