Java学习笔记2024/2/16

news/2025/2/28 2:46:10/

知识点

面向对象

题目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.ppmy.cn/news/1354700.html

相关文章

⭐北邮复试刷题429. N 叉树的层序遍历(按层入队出队BFS)(力扣每日一题)

429. N 叉树的层序遍历 给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)。 树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。 示例 1:输入&a…

C#面:简述重载

重载是指在同一个作用域内,可以定义多个同名但参数列表不同的函数或方法。通过重载,可以根据不同的参数类型或参数个数来调用不同的函数或方法。 在C#中,重载的函数或方法必须具有不同的参数列表,包括参数的类型、个数或者参数的…

深入理解Spring Boot Starter:概念、特点、场景、原理及自定义starter

这是目录 **一、引言****二、Spring Boot Starter基本概念****三、Spring Boot Starter的主要特点****四、Spring Boot Starter的应用场景****五、Spring Boot Starter的实现原理****六、自定义spring boot starter****为什么要创建自定义Starter?****创建自定义Spr…

电子商务跨境电商大数据的关键技术之—主流电商大数据采集

大数据采集是指通过各种技术手段和工具收集、获取和提取大规模数据的过程。在信息时代,各种互联网、物联网、移动设备等的普及和应用,产生了海量的数据,这些数据被称为大数据。大数据采集就是对这些数据进行收集和抓取,以获得有意…

C#学习(十三)——多线程与异步

一、什么是线程 程序执行的最小单元 一次页面的渲染、一次点击事件的触发、一次数据库的访问、一次登录操作都可以看作是一个一个的进程 在一个进程中同时启用多个线程并行操作,就叫做多线程 由CPU来自动处理 线程有运行、阻塞、就绪三态 代码示例: cl…

[嵌入式系统-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…

【北邮鲁鹏老师计算机视觉课程笔记】03 edge 边缘检测

【北邮鲁鹏老师计算机视觉课程笔记】03 1 边缘检测 有几种边缘? ①实体上的边缘 ②深度上的边缘 ③符号的边缘 ④阴影产生的边缘 不同任务关注的边缘不一样 2 边缘的性质 边缘在信号突变的地方 在数学上如何寻找信号突变的地方?导数 用近似的方法 可以…

C#系列-Entity Framework 架构(18)

下图展示了EF的整体架构。现在让我们逐个地看看架构的各个组件: EF组件图 EDM(Entity Data Mode 实体数据模型):EDM 由三个主要部分组成:概念模型,映射和存储模型。 Conceptual Model(概念模型&#xff0…