Java学习笔记2024/2/16

知识点

面向对象

题目1(完成)

定义手机类,手机有品牌(brand),价格(price)和颜色(color)三个属性,有打电话call()和sendMessage()两个功能。

请定义出手机类,类中要有空参、有参构造方法,set/get方法。

定义测试类,在主方法中使用空参构造创建对象,使用set方法赋值。

调用对象的两个功能,打印效果如下:

正在使用价格为3998元黑色的小米手机打电话....
正在使用价格为3998元黑色的小米手机发短信....

训练提示

  1. 类中的属性就是成员变量,类中的行为功能就是成员方法。

  2. 成员变量要被private修饰。

解题方案

操作步骤

  1. 定义手机类,手机类中定义String类型的品牌,int类型的价格,String类型的颜色,三个成员变量都用privice修饰。

  2. 提供空参构造方法和有参构造方法。

  3. 提供set/get方法。

  4. 编写打电话的成员方法,方法中对成员变量进行使用。

  5. 编写发短信的成员方法,方法中对成员变量进行使用。

  6. 在测试类中创建手机对象,使用set方法赋值,分别调用各个方法。

参考答案

package test;
​
public class Phone {
​private String brand;private int price;private String color;
​public Phone() {}
​public Phone(String brand, int price, String color) {this.brand = brand;this.price = price;this.color = color;}
​public String getBrand() {return brand;}
​public void setBrand(String brand) {this.brand = brand;}
​public int getPrice() {return price;}
​public void setPrice(int price) {this.price = price;}
​public String getColor() {return color;}
​public void setColor(String color) {this.color = color;}
​public void call(){System.out.println("正在使用价格为"+price+"元"+color+"的"+brand+"手机打电话...");}public void sendMessage(){System.out.println("正在使用价格为"+price+"元"+color+"的"+brand+"手机发短信...");}
}
​
package test;
​
public class PhoneTest {public static void main(String[] args) {Phone phone = new Phone();
​phone.setBrand("小米");phone.setPrice(3998);phone.setColor("黑色");
​phone.call();phone.sendMessage();
​}
}
​

题目2(完成)

定义一个女朋友类。女朋友的属性包含:姓名,身高,体重。行为包含:洗衣服wash(),做饭cook()。另外定义一个用于展示三个属性值的show()方法。请在测试类中通过有参构造方法创建对象并赋值,然后分别调用展示方法、洗衣服方法和做饭方法。打印效果如下:

我女朋友叫小希,身高162.0厘米,体重100.0斤
女朋友帮我洗衣服
女朋友给我做饭

训练提示

  1. 类中的属性就是成员变量,类中的行为功能就是成员方法。

  2. 成员变量要被private修饰。

  3. 展示方法的作用就是打印姓名、身高、体重三个成员变量的值。

解题方案

操作步骤

  1. 定义女朋友类,定义String类型姓名,double类型身高和double类型体重三个成员变量,三个成员变量都用privice修饰。

  2. 提供空参构造方法和有参构造方法。

  3. 提供set/get方法。

  4. 编写展示方法show(),方法打印三个成员变量的值。

  5. 编写洗衣服wash()方法,输出洗衣服的语句。

  6. 编写做饭cook()方法,输出做饭的语句。

  7. 在测试类中使用有参构造创建女友对象,分别调用各个方法。

参考答案

package test.test2;
​
public class GirlFriend {private String name;private double height;private double jin;
​public GirlFriend() {}
​public GirlFriend(String name, double height, double jin) {this.name = name;this.height = height;this.jin = jin;}
​public String getName() {return name;}
​public void setName(String name) {this.name = name;}
​public double getHeight() {return height;}
​public void setHeight(double height) {this.height = height;}
​public double getJin() {return jin;}
​public void setJin(double jin) {this.jin = jin;}
​public void show() {System.out.println("我女朋友叫" + name + ",身高" + height + "厘米,体重" + jin + "斤");}
​public void wash() {System.out.println("女朋友帮我洗衣服");}
​public void cook() {System.out.println("女朋友给我做饭");}
​
}
​
package test.test2;
​
public class GirlFriendTest {public static void main(String[] args) {GirlFriend g = new GirlFriend("小希", 162, 100);
​g.show();g.wash();g.cook();
​
​}
}
​

题目3(完成)

定义项目经理类Manager。属性:姓名name,工号id,工资salary,奖金bonus。行为:工作work() 定义程序员类Coder。属性:姓名name,工号id,工资salary。行为:工作work()

要求:

1.按照以上要求定义Manager类和Coder类,属性要私有,生成空参、有参构造,set和get方法 ​ 2.定义测试类,在main方法中创建该类的对象并给属性赋值(set方法或有参构造方法) ​ 3.调用成员方法,打印格式如下:

工号为123基本工资为15000奖金为6000的项目经理张三正在努力的做着管理工作,分配任务,检查员工提交上来的代码.....
工号为135基本工资为10000的程序员李四正在努力的写着代码......

训练提示

  1. 类中的属性就是成员变量,类中的行为功能就是成员方法。

  2. 成员变量要被private修饰。

  3. 在工作work()方法中调用成员变量,输出成员变量的值。

解题方案

操作步骤

  1. 定义项目经理类,定义成员变量,构造方法,set和get方法,work方法,方法中根据打印格式输出id,salary,bonus的值。

  2. 定义程序猿类,定义成员变量,构造方法,set和get方法,work方法,方法中根据打印格式输出id和salary的值。

  3. 在测试类中使用有参构造创建项目经理对象并赋值,调用工作方法打印结果。

  4. 在测试类中使用有参构造创建程序员对象并赋值,调用工作方法打印结果。

参考答案

package test.test3;
​
public class Manager {private String name;private int id;private int salary;private int bonus;
​public Manager() {}
​public Manager(String name, int id, int salary, int bonus) {this.name = name;this.id = id;this.salary = salary;this.bonus = bonus;}
​public String getName() {return name;}
​public void setName(String name) {this.name = name;}
​public int getId() {return id;}
​public void setId(int id) {this.id = id;}
​public int getSalary() {return salary;}
​public void setSalary(int salary) {this.salary = salary;}
​public int getBonus() {return bonus;}
​public void setBonus(int bonus) {this.bonus = bonus;}
​public void work() {System.out.println("工号为" + id + "基本工资为" + salary + "奖金为" + bonus + "的项目经理" + name + "正在努力的做着管理工作,分配任务,检查员工提交上来的代码.....");}
​
}
​
package test.test3;
​
public class Coder {private String name;private int id;private int salary;
​public Coder() {}
​public Coder(String name, int id, int salary) {this.name = name;this.id = id;this.salary = salary;}
​public String getName() {return name;}
​public void setName(String name) {this.name = name;}
​public int getId() {return id;}
​public void setId(int id) {this.id = id;}
​public int getSalary() {return salary;}
​public void setSalary(int salary) {this.salary = salary;}
​public void work() {System.out.println("工号为" + id + "基本工资为" + salary + "的程序员" + name + "正在努力的写着代码......");}
​
}
​
package test.test3;
​
public class Test {public static void main(String[] args) {Manager m = new Manager("张三", 123, 15000, 6000);Coder c = new Coder("李四", 135, 10000);
​m.work();c.work();
​
​}
}
​

题目4(完成)

定义猫类Cat。属性:毛的颜色color,品种breed。行为:吃饭eat(),抓老鼠catchMouse() 定义狗类Dog。属性:毛的颜色color,品种breed。行为:吃饭(),看家lookHome() 要求: ​ 1.按照以上要求定义Cat类和Dog类,属性要私有,生成空参、有参构造,set和get方法 ​ 2.定义测试类,在main方法中创建该类的对象并给属性赋值(set方法或有参构造方法) ​ 3.调用成员方法,打印格式如下:

花色的波斯猫正在吃鱼.....
花色的波斯猫正在逮老鼠....
黑色的藏獒正在啃骨头.....
黑色的藏獒正在看家.....

训练提示

  1. 类中的属性就是成员变量,类中的行为功能就是成员方法。

  2. 成员变量要被private修饰。

解题方案

操作步骤

  1. 定义猫类,定义成员变量,构造方法,set和get方法,吃饭方法eat(),抓老鼠方法catchMouse(),方法中根据题目给出的格式输出成员变量的值。

  2. 定义狗类,定义成员变量,构造方法,set和get方法,吃饭方法eat(),看家方法lookHome(),方法中根据题目给出的格式输出成员变量的值。

  3. 在测试类中使用有参构造创建猫类对象,调用eat()方法和catchMouse()方法。

  4. 在测试类中使用有参构造创建狗类对象,调用eat()方法和lookHome()方法。

参考答案

package test.test4;
​
public class Cat {private String color;private String breed;
​public Cat() {}
​public Cat(String color, String breed) {this.color = color;this.breed = breed;}
​public String getColor() {return color;}
​public void setColor(String color) {this.color = color;}
​public String getBreed() {return breed;}
​public void setBreed(String breed) {this.breed = breed;}
​public void eat() {System.out.println(color + "的" + breed + "正在吃鱼.....");}
​public void catchMouse() {System.out.println(color + "的" + breed + "正在逮老鼠....");}
}
​
package test.test4;
​
public class Dog {private String color;private String breed;
​public Dog() {}
​public Dog(String color, String breed) {this.color = color;this.breed = breed;}
​public String getColor() {return color;}
​public void setColor(String color) {this.color = color;}
​public String getBreed() {return breed;}
​public void setBreed(String breed) {this.breed = breed;}public void eat(){System.out.println(color + "的" + breed + "正在啃骨头.....");}public void lookHome(){System.out.println(color + "的" + breed + "正在看家....");}
}
​
package test.test4;
​
public class Test {public static void main(String[] args) {Cat c = new Cat("花色", "波斯猫");c.eat();c.catchMouse();
​Dog d = new Dog("黑色", "藏獒");d.eat();d.lookHome();
​
​}
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第13章 网络 Page741~744 asio核心类 ip::tcp::socket

1. ip::tcp::socket liburl库使用"curl*" 代表socket 句柄 asio库使用ip::tcp::socket类代表TCP协议下的socket对象。 将“句柄”换成“对象”,因为asio库是不打折扣的C库 ip::tcp::socket提供一下常用异步操作都以async开头 表13-3 tcp::socket提供的异步操作 …

[嵌入式系统-28]:开源的虚拟机监视器和仿真器:QEMU(Quick EMUlator)与VirtualBox、VMware Workstation的比较

目录 一、QEMU概述 1.1 QEMU架构 1.2 QEMU概述 1.3 什么时候需要QEMU 1.4 QEMU两种操作模式 1.5 QEMU模拟多种CPU架构 二、QEMU与其他虚拟机的比较 2.1 常见的虚拟化技术 2.1 Linux KVM 2.2 Windows VirtualBox 2.3 Windows VMware workstation 三、VirtualBox、VM…

Microsoft SQL Server 2012 CONVERT(VARCHAR(100), GETDATE(), 0); 各个数字的含义

如果是2016以上的,可以直接诶去官网查看,官网链接:CAST 和 CONVERT (Transact-SQL) - SQL Server | Microsoft Learn 这里给的链接是2016的,可以坐上角调整数据库版本,然后搜索convert 这是我的数据库版本&#xff1…

Vue22 Vue监测数据改变的原理_数组

实例 <!DOCTYPE html> <html><head><meta charset"UTF-8" /><title>Vue监测数据改变的原理_数组</title><!-- 引入Vue --><script type"text/javascript" src"../js/vue.js"></script>&…

fish终端下conda activate失败

【问题】fish终端下激活conda环境报错&#xff1a; >> conda activate base CondaError: Run conda init before conda activate ## 然而运行 conda init fish 仍旧无法解决【解决】 参考&#xff1a;https://github.com/conda/conda/issues/11079 方法一&#xf…

log_error_verbosity参数详解

参数说明 控制每条日志信息的详细程度。 默认: log_error_verbosity = default , terse、default、verbose三选一 terse模式下,返回的消息只包括严重性、主要文本以及位置;这些东西通常放在一个单一行中。 default模式生成的消息包括上面的信息加上任何细节、提示或者…

2024.02.18作业

1. 使用fgets统计给定文件的行数 #include <stdio.h> #include <stdlib.h> #include <string.h>int main(int argc, char const *argv[]) {if (argc ! 2){puts("input file error");puts("usage:./a.out filename");return -1;}FILE* f…

SMT2020:半导体制造流程标准仿真测试数据介绍

文章目录 问题背景SMT2020 涉及的主要功能1. 包含多种仿真模型类型2. 包含非计划性动作3. 区分不同类型设备的加工速率4. 特殊的复杂操作SMT2020 数据概览1. AutoSched 仿真模型数据2. General Data 输入数据问题背景 在半导体的生产制造当中,由于晶元片及设备等的高价值性,…

CSP-201812-1-小明上学

CSP-201812-1-小明上学 解题思路 #include <iostream> using namespace std; int main() {int red, yellow, green, n, timeSum 0;cin >> red >> yellow >> green;cin >> n;for (int i 0; i < n; i){int flag, time;cin >> flag &g…

分享视频二维码如何生成?怎么让其他人扫码查看自己的视频?

现在很多展示性的视频都会通过生成二维码的方式来传播分享&#xff0c;选择二维码的方式来分享能够更加快捷的获取视频内容&#xff0c;让更多人可以同时查看&#xff0c;有效提高视频传播的速度和效率。那么怎么制作视频二维码呢&#xff1f;其实方法很简单&#xff0c;只需要…

lvs DR模式+基于五台服务器部署keepalived + lvs DR模式架构(前端带路由)负载均衡的高可用集群

lvs DR模式基于五台服务器部署keepalived lvs DR模式架构(前端带路由)负载均衡的高可用集群 DR模式一&#xff1a; 客户端&#xff1a;172.20.26.167 LVS服务器&#xff1a;172.20.26.198 后端服务器&#xff1a;172.20.26.218 后端服务器&#xff1a;172.20.26.210 两台…

三勾点餐系统源码,java后台+微信小程序 实现完整的餐厅点餐

三勾点餐系统基于javaspringbootelement-plusuniapp打造的面向开发的小程序商城&#xff0c;方便二次开发或直接使用&#xff0c;可发布到多端&#xff0c;包括微信小程序、微信公众号、QQ小程序、支付宝小程序、字节跳动小程序、百度小程序、android端、ios端。 功能介绍 1.…

【牛客面试必刷TOP101】Day23.BM27 按之字形顺序打印二叉树和BM30 二叉搜索树与双向链表

作者简介&#xff1a;大家好&#xff0c;我是未央&#xff1b; 博客首页&#xff1a;未央.303 系列专栏&#xff1a;牛客面试必刷TOP101 每日一句&#xff1a;人的一生&#xff0c;可以有所作为的时机只有一次&#xff0c;那就是现在&#xff01;&#xff01;&#xff01;&…

java中的数据结构及数据类型转换

基本数据类型&#xff08;4类8种&#xff09; 数据类型关键字内存占用取值范围说明字节byte1个字节-128 ~ 127短整型short2个字节-32768 ~ 32767整型int&#xff08;默认&#xff09;4个字节-231 ~ 231-1&#xff08;21个亿&#xff09;长整型long8个字节-263 ~ 263-&#xff…

在字节划水的7年,太真实了。。

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号【互联网杂货铺】&#xff0c;回复 1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 测试这条路是坎坷的&#xff0c;我自己深有体会。 我们的起点低…

高并发系统:常见的设计思路

高并发的书籍文章其实有很多&#xff0c;我们工作中也或多或少遇到过一些。今天这里总结下常见的思路。 一&#xff0c;分而治之。 这个是最容易想到的办法&#xff0c;这里面包含了几层思路。 1&#xff0c;产品设计。业务上就引导用户分开使用&#xff0c;按需购买&#xff…

力扣题目训练(15)

2024年2月8日力扣题目训练 2024年2月8日力扣题目训练507. 完美数520. 检测大写字母521. 最长特殊序列 Ⅰ221. 最大正方形237. 删除链表中的节点115. 不同的子序列 2024年2月8日力扣题目训练 2024年2月8日第十五天编程训练&#xff0c;今天主要是进行一些题训练&#xff0c;包括…

ViT: transformer在图像领域的应用

文章目录 1. 概要2. 方法3. 实验3.1 Compare with SOTA3.2 PRE-TRAINING DATA REQUIREMENTS3.3 SCALING STUDY3.4 自监督学习 4. 总结参考 论文&#xff1a; An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale 代码&#xff1a;https://github.com…

C++中的constexpr

C中的constexpr 什么是constexpr&#xff1f; 在C中&#xff0c;constexpr是一个关键字&#xff0c;它用于声明常量表达式。这些表达式在编译时被计算&#xff0c;而不是在运行时。这意味着constexpr可以用于任何需要在编译时知道值的地方&#xff0c;例如数组的大小或模板参…

Python爬虫详解(一看就懂)

爬虫 爬虫是什么 爬虫简单的来说就是用程序获取网络上数据这个过程的一种名称。 爬虫的原理 如果要获取网络上数据&#xff0c;我们要给爬虫一个网址&#xff08;程序中通常叫URL&#xff09;&#xff0c;爬虫发送一个HTTP请求给目标网页的服务器&#xff0c;服务器返回数据…