day06作业:
必做题:
------------------------------------------------------------------
第一题:分析以下需求,并用代码实现
手机类Phone
属性:
品牌brand
价格price
行为:
打电话call()
发短信sendMessage()
玩游戏playGame()
要求:
1.按照以上要求定义类,属性要私有,生成空参、有参构造,setter和getter方法
2.定义测试类,在main方法中创建该类的对象并使用set方式给属性赋值(价格:998,品牌:小米)
3.调用三个成员方法,打印格式如下:
正在使用价格为998元的手机打电话....
正在使用小米品牌的手机发短信....
正在使用价格为998元的小米品牌的手机玩游戏....
Phone类
public class Phone { private String brand; //品牌 private String price; //价格 void call(){ //打电话 System.out.println("打电话"); } void sendMessage(){//发短信 System.out.println("发短息"); } void playGame(){ System.out.println("玩游戏"); } public Phone (){ //空参构造 } public Phone (String brand,String price) { //有参构造 } public String getBrand() { return brand; } public String getPrice() { return price; } public void setBrand(String brand) { this.brand = brand; } public void setPrice(String price) { this.price = price; } }
Test类
public class Test { public static void main(String[] args) { Phone phone1 =new Phone(); phone1.setBrand("小米"); phone1.setPrice("998"); System.out.println("正在使用价格为"+phone1.getPrice()+"元的手机打电话。。。"); System.out.println("正在使用"+phone1.getBrand()+"品牌的手机发短息。。。"); System.out.println("正在使用价格为"+phone1.getPrice()+"元的"+phone1.getBrand()+"品牌的手机玩游戏。。。"); } }
第二题:分析以下需求,并用代码实现
1.猫类Cat
属性:
毛的颜色color
品种breed
行为:
吃饭eat()
抓老鼠catchMouse()
2.狗类Dog
属性:
毛的颜色color
品种breed
行为:
吃饭()
看家lookHome()
要求:
1.按照以上要求定义Cat类和Dog类,属性要私有,生成空参、有参构造,setter和getter方法
2.定义测试类,在main方法中创建每个类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
3.调用每个对象的成员方法,打印格式如下:
花色的波斯猫正在吃鱼.....
花色的波斯猫正在逮老鼠....
黑色的藏獒正在啃骨头.....
黑色的藏獒正在看家.....
Cat类
public class Cat { private String color;//毛的颜色 private String breed;//品种 void eat(){ System.out.println("吃饭"); } void catchMouse(){ System.out.println("抓老鼠"); } void Cat(){} void Cat(String color,String breed){ } public String getColor() { return color; } public String getBreed() { return breed; } public void setColor(String color) { this.color = color; } public void setBreed(String breed) { this.breed = breed; } }
Dog类
public class Dog { private String color; private String breed; void eat(){ System.out.println("吃饭"); } void lookHome(){ System.out.println("看家"); } void Dog(){ } void Dog(String color,String breed){ } public String getColor() { return color; } public String getBreed() { return breed; } public void setColor(String color) { this.color = color; } public void setBreed(String breed) { this.breed = breed; } }
Test2类
public class Test2 { public static void main(String[] args) { Cat cat = new Cat(); cat.setBreed("波斯猫"); cat.setColor("花色"); Dog dog =new Dog(); dog.setBreed("藏獒"); dog.setColor("黑色"); System.out.println(cat.getColor()+"的"+cat.getBreed()+"正在吃鱼。。。"); System.out.println(cat.getColor()+"的"+cat.getBreed()+"正在逮老鼠。。。"); System.out.println(dog.getColor()+"的"+dog.getBreed()+"正在啃骨头。。。"); System.out.println(dog.getColor()+"的"+dog.getBreed()+"正在看家。。。"); } }
第三题:分析以下需求,并用代码实现
1.老师类Teacher
属性:
姓名name
年龄age
讲课内容content
行为:
吃饭
讲课
2.学生类Student
属性:
姓名name
年龄age
学习内容content
行为:
吃饭eat()
学习study()
要求:
1.按照以上要求定义Teacher类和Student类,属性要私有,生成空参、有参构造,setter和getter方法
2.定义测试类,在main方法中创建每个类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
3.调用每个对象的成员方法,打印格式如下:
年龄为30的周志鹏老师正在吃饭....
年龄为30的周志鹏老师正在亢奋的讲着Java基础中面向对象的知识........("Java基础中面向对象"代表老师讲课的内容)
年龄为18的韩光同学正在吃饭....
年龄为18的韩光同学正在专心致志的听着面向对象的知识....("面向对象"代表学生学习的内容)
Teacher类
public class Teacher { private String name;//姓名 private int age;//年龄 private String content;//讲课内容 void eat(){ System.out.println("年龄为"+age+"的"+name+"老师正在吃饭...."); } void teacher(){ System.out.println("年龄为"+age+"的"+content); } void Teacher(){} void Teacher(String name,int age,String content){} 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 getContent() { return content; } public void setContent(String content) { this.content = content; } }
Student类
public class Student { private String name;//姓名 private int age;//年龄 private String content;//学习内容 void Student (){} void Student (String name,int age,String content){} void eat(){ System.out.println("年龄为"+age+"的"+name+"同学正在吃饭...."); } void study(){ System.out.println("年龄为"+age+"的"+name+"同学"+content); } 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 getContent() { return content; } public void setContent(String content) { this.content = content; } }
Test3类
public class Test3 { public static void main(String[] args) { Teacher teacher=new Teacher(); teacher.setAge(30); teacher.setName("周志鹏"); teacher.setContent("正在亢奋的讲着Java基础中面向对象的知识........"); teacher.eat(); teacher.teacher(); Student student = new Student(); student.setAge(18); student.setName("韩光"); student.setContent("正在专心致志的听着面向对象的知识...."); student.eat(); student.study(); } }
第四题:分析以下需求,并用代码实现
定义人类Person,包含以下成员:
成员属性:
姓名 name( String类型)
年龄 age(double类型)
1.按照以上要求定义Person,属性要私有,生成空参、有参构造,setter和getter方法
2.定义测试类:根据如下需求创建多个对象(使用满参构造创建,即有参构造).
老王-35 小芳-23
3.通过两个对象,比较谁的年龄大,并打印出来.
例: 老王年龄比较大
Person类
public class Person { private String name;//姓名 private double age;//年龄 public Person(){} public Person(String name,double age){ this.name=name; this.age=age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public double getAge() { return age; } public void setAge(double age) { this.age = age; } }
Test5类
public class Test5 { public static void main(String[] args) { Person person = new Person("老王",35); Person person1 = new Person("小芳",23); System.out.println(person.getAge()>person1.getAge()?"老王":"小芳"); } }
练习题:
------------------------------------------------------------------
1.定义“电脑类”Computer,包含以下成员:
成员属性:
品牌brand( String类型)
价格 price(double类型)
成员方法:
编码coding(), 调用方法打印 ***电脑正在使用Java语言编程
玩游戏,playGame(),调用方法打印 ***电脑正在玩王者荣耀s
1.按照以上要求定义Computer,属性要私有,生成空参、有参构造,setter和getter方法
2.定义测试类,a.创建一个电脑对象,设置品牌为ThinkPad,价格为7399,调用方法coding
b.创建一个电脑对象,设置品牌为Acer,价格为5399,调用方法playGame
Computer类
public class Computer { private String brand; private double price; void coding(){ System.out.println(brand+"电脑正在使用Java语言编程"); } void playGame(){ System.out.println(brand+"电脑正在玩王者荣耀"); } Computer(){} Computer(String brand,double price){} public String getBrand() { return brand; } public void setBrand(String brand) { this.brand = brand; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } }
Test6 类
public class Test6 { public static void main(String[] args) { Computer computer = new Computer(); Computer computer1 = new Computer(); computer.setBrand("ThinkPad"); computer.setPrice(7399); computer1.setBrand("Acer"); computer1.setPrice(5399); computer.coding(); computer1.playGame(); } }
2.定义汽车类Car,包含以下成员:
成员属性:
品牌 brand( String类型)
电量 power(double类型)
成员方法:
报警 warning() 调用方法,可以检验当前电量是否低于10,如果低于10,就打印"电量不足". 如果不低于10,就打印"电量充足"
1.按照以上要求定义Car,属性要私有,生成空参、有参构造,setter和getter方法
2.定义测试类:根据如下需求创建多个对象,调用warning()方法.
特斯拉-50 比亚迪-9
Car类
public class Car { private String brand; private double power; void warning(double power){ if (power<10){ System.out.println("电量不足"); }else { System.out.println("电量充足"); } } Car(){} Car(String brand,double power){ this.power=power; } public String getBrand() { return brand; } public void setBrand(String brand) { this.brand = brand; } public double getPower() { return power; } public void setPower(double power) { this.power = power; } }
Test7
public class Test7 { public static void main(String[] args) { Car car = new Car("特斯拉",50); Car car1 = new Car("比亚迪",9); car.warning(car.getPower()); car1.warning(car1.getPower()); } }
3. 1.项目经理类Manager
属性:
姓名name
工号id
工资salary
奖金bonus
行为:
工作work()
2.程序员类Coder
属性:
姓名name
工号id
工资salary
行为:
工作work()
要求:
1.按照以上要求定义Manager类和Coder类,属性要私有,生成空参、有参构造,setter和getter方法
2.定义测试类,在main方法中创建每个类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
3.调用每个对象的成员方法,打印格式如下:
工号为123基本工资为15000奖金为6000的项目经理周扒皮正在努力的做着管理工作,分配任务,检查员工提交上来的代码.....
工号为135基本工资为10000的程序员杨白劳正在努力的写着代码......
Manager类
public class Manager { private String name;//姓名 private String id;//工号 private double salary;//工资 private double bonus;//奖金 void work(){ System.out.println("工号为"+id+"基本工资为"+salary+"奖金为"+bonus+"的项目经理"+name+"正在努力的做着管理工作,分配任务,检查员工提交上来的代码....."); } Manager(){} Manager(String name,String id,double salary,double bonus){ this.name=name; this.id=id; this.salary=salary; this.bonus=bonus; } }
Coder类
public class Coder { private String name;//姓名 private String id;//工号 private double salary;//工资 void work(){ System.out.println("工号为"+id+"基本工资为"+salary+"的程序员"+name+"正在努力的写着代码......"); } Coder(){} Coder(String name,String id,double salary){} public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public double getSalary() { return salary; } public void setSalary(double salary) { this.salary = salary; } }
Test8类
public class Test8 { public static void main(String[] args) { Manager manager=new Manager("周扒皮","123",15000,6000); Coder coder =new Coder(); coder.setName("杨白劳"); coder.setId("135"); coder.setSalary(10000); manager.work(); coder.work(); }
}