java 定义一个商品类_Java基础-day09-代码题-对象&类&封装

本文介绍了Java编程中关于对象和类的实践,包括定义空调类、学生类和商品类。空调类具备品牌、价格、开机和定时关机功能;学生类包含姓名、年龄,能自我介绍并比较年龄差;商品类包含名称和价格,可计算多个商品的平均价格。此外,还展示了如何根据学生成绩打等级并奖励优秀学生。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java基础-day09-代码题-对象&类&封装Java帮帮

一、定义一个空调类和对应的测试类

该题考查点:属性和方法的使用!

要求:

1、空调有品牌和价格两个属性,并且将属性私有化,提供公有的getXxx与setXxx方法对属性赋值和取值;

2、提供一个无返回值的无参数的开机的方法,内容打印一句话:“空调开机了...”;

3、提供一个无返回值的带1个int类型参数的定时关机的方法,(int类型的参数表示设定的分钟数),内容打印一句话:“空调将在xxx分钟后自动关闭...”;

4、在测试类中创建出空调对象,并给空调的品牌和价格赋任意值;

5、使用空调对象获取空调的品牌和价格并打印到控制台上;

6、使用空调对象调用开机方法;

7、使用空调对象调用定时关机方法,并传递具体数据值,在控制台上可以看到的效果为:空调将在xxx分钟后自动关闭...

其中语句中的“xxx”是调用方法时传递的具体数据值;

179413111_3_20200102024011487

179413111_4_20200102024011753

代码实现:

package StudentJavaSEday09;

/*

* 空调类:

* 属性:

* 品牌

* 价格

* 方法:

* 开机

* 定时关机

* getXxx与setXxx

*/

public class KongTiao {

// 属性

private String name;

private double price;

// getter与setter

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

// 开机

public void kaiJi() {

System.out.println("空调开机了...");

}

// 定时关机

public void dingShiGuanJi(int fenZhong) {

System.out.println("空调将在" + fenZhong + "分钟后自动关闭...");

}

}

package StudentJavaSEday09;

/*

* 空调测试类

*/

public class KongTiaoTest {

public static void main(String[] args) {

// 1、创建对象

KongTiao kt = new KongTiao();

// 2、赋值

kt.setName("格力");

kt.setPrice(2999.99);

// 3、取值

String name = kt.getName();

double price = kt.getPrice();

// 4、打印值

System.out.println("空调的品牌为:" + name);

System.out.println("空调的价格为:" + price);

// 5、开机

kt.kaiJi();

// 6、定时关机

kt.dingShiGuanJi(30);

}

}

运行结果:

二、定义一个学生类和对应的测试类

该题考查点:this关键字的使用!

要求:

1、学生有姓名和年龄两个属性,并且将属性私有化,提供公有的getXxx与setXxx方法对属性赋值和取值;

2、提供一个无返回值的无参数的自我介绍的方法,内容打印一句话:

“大家好,我叫xxx,今年xxx岁了!”

3、提供一个返回值为String类型,参数为学生类型的比较年龄差值的方法,如果当前对象的年龄比参数中的学生的年龄大,则返回:“我比同桌大xxx岁!”;如果当前对象的年龄比参数中的学生的年龄小,则返回:“我比同桌小xxx岁!”;如果当前对象的年龄和参数中的学生的年龄一样大,则返回:“我和同桌一样大!”

4、在测试类中分别创建你和你同桌两个人的对象,并分别给你和你同桌的姓名和年龄属性赋上对应的值;

5、调用你自己的对象的自我介绍的方法,展示出你自己的姓名和年龄;

6、用你自己的对象调用比较年龄差值的方法,把你同桌作为参数使用,并打印方法返回的字符串的内容;

179413111_6_20200102024012144

179413111_7_20200102024012456

代码实现:

package StudentJavaSEday09;

/*

* 学生类:

* 属性:

* 姓名

* 年龄

* 方法:

* 自我介绍

* 比较年龄差值

* getXxx与setXxx

*/

public class XueSheng {

// 属性

private String name;

private int age;

private Object tongzhuo;

// getter与setter

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 void ziWoJieShao() {

System.out.println("大家好,我叫" + this.name + ",今年" + this.age + "岁了!");

}

// 比较年龄差

public String biJiaoNianLingCha(XueSheng xs) {

// 1、获取参数中学生的年龄

int age2 = xs.getAge();

if (this.age > age2) {

return "我比同桌大" + (this.age - age2) + "岁!";

} else if (this.age < age2) {

return "我比同桌小" + (age2 - this.age) + "岁!";

} else {

return "我和同桌一样大!";

}

}

}

package StudentJavaSEday09;

/*

* 学生测试类

*/

public class XueShengTest {

public static void main(String[] args) {

// 1、分别创建两个对象

XueSheng wo = new XueSheng();

XueSheng tongZhuo = new XueSheng();

// 2、分别赋值

wo.setName("奋斗蒙");

wo.setAge(25);

tongZhuo.setName("学友");

tongZhuo.setAge(19);

// 3、调用自我介绍的方法

wo.ziWoJieShao();

// 4、调用比较年龄差的方法

String cha = wo.biJiaoNianLingCha(tongZhuo);

System.out.println(cha);

}

}

运行结果:

179413111_8_20200102024012722

三、定义一个商品类和对应测试类

要求:

1、定义商品类,有名称和价格两个属性,并且将属性私有化,提供公有的getXxx与setXxx方法对属性赋值和取值;设置有参无参构造方法

2、编写测试类,在测试类中通过构造分别创建3个商品对象,并分别给3个商品对象的名称和价格赋值;

3、然后求出是三个商品的平均价格;

179413111_9_20200102024012847

179413111_10_2020010202401381

代码实现:

package StudentJavaSEday09;

public class ShangPin {

// 属性

private String name;

private double price;

public ShangPin() {

super();

// TODO Auto-generated constructor stub

}

public ShangPin(String name, double price) {

super();

this.name = name;

this.price = price;

}

// getter与setter

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

}

package StudentJavaSEday09;

public class ShangPinTest {

public static void main(String[] args) {

ShangPin d1 = new ShangPin("洗衣机", 300.5);

ShangPin d2 = new ShangPin("电视机", 888.5);

ShangPin d3 = new ShangPin("吹风机", 49.2);

double num = 0;

double price1 = d1.getPrice();

double price2 = d2.getPrice();

double price3 = d3.getPrice();

num = price1 + price2 + price3;

double pingJun = num / 3;

System.out.println("所有商品的平均价格为:" + pingJun);

}

}

运行结果:

179413111_11_20200102024013331

四、创建student类,包含年龄,姓名,成绩属性,本类中有对学生成绩打等级的方法,并返回该等级(A,B,C)

在主方法中: 创建三个Student对象并传入method(ArrayList stu)方法中

method方法内要求: 该方法内有对等级进行判断的方法,如果为A等级则打印该学生姓名,并奖励一朵小红花~~

179413111_12_20200102024013441

179413111_13_20200102024013784

代码运行:

package StudentJavaSEday09;

public class XueSheng2 {

private String name;

private int age;

private double grade;

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 double getGrade() {

return grade;

}

public void setGrade(double grade) {

this.grade = grade;

}

public XueSheng2(String name, int age, double grade) {

super();

this.name = name;

this.age = age;

this.grade = grade;

}

public XueSheng2() {

super();

}

public char getMyGrade() {

if (80 < grade && grade <= 100) {

return 'A';

}

if (60 < grade && grade <= 80) {

return 'B';

}

if (0 < grade && grade <= 60) {

return 'C';

}

return 0;

}

}

package StudentJavaSEday09;

import java.util.ArrayList;

public class XueShengTest2 {

public static void main(String[] args) {

ArrayList  arr = new ArrayList<>();

arr.add(new XueSheng2("张三",11,100));

arr.add(new XueSheng2("李四",12,80));

arr.add(new XueSheng2("王五",13,70.5));

mehtod(arr);

}

private static void mehtod(ArrayList arr) {

for (int i = 0; i < arr.size(); i++) {

XueSheng2 XueSheng2 = arr.get(i);

if(XueSheng2.getMyGrade()=='A'){

System.out.println("奖励"+XueSheng2.getName()+"同学一个小红花");

}

}

}

}

运行结果:

179413111_14_2020010202401419

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值