专栏首页Java帮帮-微信公众号-技术文章全总结Java基础-day09-代码题-对象;类;封装

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

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

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

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

要求:

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

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

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

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

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

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

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

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

代码实现:
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、用你自己的对象调用比较年龄差值的方法,把你同桌作为参数使用,并打印方法返回的字符串的内容;

代码实现:

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);
 }
}

运行结果:

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

要求:

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

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

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

代码实现:

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);
 }
}

运行结果:

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

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

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

代码运行:

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<XueSheng2>  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<XueSheng2> arr) {
 for (int i = 0; i < arr.size(); i++) {
 XueSheng2 XueSheng2 = arr.get(i);
 if(XueSheng2.getMyGrade()=='A'){
 System.out.println("奖励"+XueSheng2.getName()+"同学一个小红花");
 }
 }
 }
}

运行结果:

本文分享自微信公众号 - Java帮帮(javahelp)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-06-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • String类中你不知道的知识

    直接量创建对象更高效 在Java中,创建一个字符串有两种方法: //第一种方法 String str1 = "字符串1"; //第二种方法 String str...

    大闲人柴毛毛
  • Java基础深入解析——类与对象

    成员变量与局部变量的区别 1.成员变量定义在类中,整个类中都能够访问。   局部变量定义在局部代码块中,只能在局部代码块中访问。 2.成员变量存在于堆内存中,有...

    大闲人柴毛毛
  • Windows环境Java开发环境搭建

    本文讲解在Windows操作系统下如何搭建Java环境变量。 一、首先下载JDK安装包。 二、安装。 三、配置Java环境变量。 四、运行CMD测试是否安装成功...

    赵腰静
  • Java中被你忽视的四种引用

    正文开始前,有必要先了解下Java内存分配与回收,请见我的相关博文。 —————————————————————————————————— Java的数据类型分...

    大闲人柴毛毛
  • 剑指offer代码解析——面试题22栈的压入、弹出序列

    本题的详细分析过程均在代码的注释中: import java.util.Stack; /** * 题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断...

    大闲人柴毛毛
  • 提高Java代码质量的Eclipse插件之Checkstyle的使用详解

    CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具。它能够自动化代码规范检查过程,从而使得开发人员...

    大闲人柴毛毛
  • Intellij idea创建javaWeb以及Servlet简单实现

    准备: 1. 安装jdk1.7 2. 安装tomcat1.8 一、创建并设置javaweb工程 1.创建javaweb工程 File --> New -->...

    庞小明
  • java处理高并发高负载类网站的优化方法

    一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。   ...

    大闲人柴毛毛
  • 剑指offer代码解析——面试题25二叉树中和为某一值的路径

    本题详细的分析过程均在代码注释中: import java.util.Iterator; import java.util.Stack; /** * 题目:...

    大闲人柴毛毛
  • ant安装、环境变量配置及验证

    一、安装ant 到官方主页http://ant.apache.org下载新版(目前为Ant1.8.1)的ant,得到的是一个apache-ant-1.8.1-...

    庞小明

扫码关注云+社区

领取腾讯云代金券