Java任务:建立商品对象
来自CloudWiki
目录
任务描述
- 餐品是商院面馆管理系统中最重要的商品。
- 所有餐品都具有名称、价格、数量等属性。
- 本任务要求使用Java语言建立“面条类”作为模板,描述面条作为商品的共有属性,并创建面条对象(实例)来管理系统中每碗面条的数据。
任务实现:建立商品对象
创建项目Noodles
创建包和类
- 在包创建对话框中,输入包名 com.shangzhi.entity,点击 finish按钮,完成包的创建
- 在包com.shangzhi.entity1上点击右键,选择菜单 New-Class 创建类
- 输入类名Noodles,勾选红框内的复选框(包含main方法),点击Finish按钮完成Noodles类创建
public class Noodles { public static void main(String[] args) { } }
通过类创建对象
在main方法中通过类创建对象:
Noodles n1; n1= new Noodles();//声明一个Noodle类的对象n1
为类添加成员变量
- 在Noodles类中插入代码,增加名称、价格、数量,注意选择合适的数据类型
public class Noodles { //商品的名称 public String name; //商品的价格 public float price; //商品的数量, public int num; public Noodles() { } public static void main(String[] args) { // TODO Auto-generated method stub //处理 Noodles n1= new Noodles();//声明一个Noodle类的对象n1 } }
在main方法中读写这几个变量:
public static void main(String[] args) { //处理 Noodles n1= new Noodles();//声明一个Noodle类的对象n1 n1.name=name;//给变量赋值 n1.price = 10;//给变量赋值 n1.num = num;//给变量赋值 //输出 System.out.print("您点的是"+n1.name);//打印变量 System.out.print(" 价格:"+n1.price);//打印变量 System.out.println(" 数量"+ n1.num);//打印变量 }
为类添加构造方法
- 在 Noodles类中插入代码,增加包含空构造方法、包含6个参数的构造方法,方便将来创建图书对象
//空构造方法 public Noodles(){ } public Noodles(String n) { this.name = n; } public Noodles(String n,float p) { this.name = n; this.price = p; } public Noodles(String n,float p,int num) { this.name = n; this.price = p; this.num = num; }
在main方法中尝试通过构造方法创建对象:
Noodles n2= new Noodles("老北京牛肉面",15.0f,3); System.out.println(n2.toString());//打印变量
添加成员方法
- 在Noodles类中插入代码,增加成员方法getPrice和setPrice
public float getPrice( ){ System.out.println("该商品的价格为 : " + price); return price; } public void setPrice(float p) { this.price =p; }
- 在 Noodles 类中插入代码,增加toString()方法,用于将面品信息转化为字符串,方便将来输出面品对象信息
public String toString() { String str ="商品名称:"+this.name+ " 价格:"+this.price+ " 数量:"+ this.num; return str; }
在main类中创建对象
- 在本类的main 方法中插入代码,分别利用两个构造方法(无参和带参)创建图书对象b1和b2,并在控制台输出图书信息
public static void main(String[] args) { Noodles n1; n1= new Noodles();//声明一个Noodle类的对象n1 n1.name=name;//给变量赋值 n1.price = 10;//给变量赋值 n1.num = num;//给变量赋值 //输出 System.out.print("您点的是"+n1.name);//打印变量 System.out.print(" 价格:"+n1.price);//打印变量 System.out.println(" 数量"+ n1.num);//打印变量 float s= n1.getPrice(); System.out.println("第一份商品原价为:"); System.out.println(s);//打印变量 n1.setPrice(15.0f); System.out.println("第一份商品调价:"); System.out.println(n1.toString());//打印变量 Noodles n2= new Noodles("老北京牛肉面",15.0f,3); System.out.println(n2.toString());//打印变量 } }
- 点击运行该程序,查看输出结果
练习:建立用户类User
商院面馆网站建了一个用户类,仿照商品类,为它建立成员变量、构造方法、成员方法,并在main方法中创建对象调用他们。
public class User { public String name; public String pwd; public User() { } public User(String n,String p) { this.name = n; this.pwd = p; } public void setName(String name) { this.name = name; } public void setPwd(String pwd) { this.pwd = pwd; } public String toString() { String s=""; s= "姓名:"+this.name + " 密码:" +this.pwd; return s; } public static void main(String[] args) { // TODO Auto-generated method stub User u1 = new User(); u1.setName("wangli");u1.setPwd("000000"); System.out.println(u1.toString()); User u2 = new User("chenming","123456"); System.out.println(u2.toString()); } }
完整代码
public class Noodles { //商品的名称 public String name; //商品的价格 public float price; //商品的数量, public int num; //空构造方法 public Noodles(){ } public Noodles(String n) { this.name = n; } public Noodles(String n,float p) { this.name = n; this.price = p; } public Noodles(String n,float p,int num) { this.name = n; this.price = p; this.num = num; } public float getPrice( ){ // System.out.println("该商品的价格为 : " + price); return price; } public void setPrice(float p) { if(p<=0) { System.out.println("价格必须为正!"); }else { this.price =p; } } public String toString() { String str ="名称"+this.name+ " 价格:"+this.price+ " 数量:"+ this.num; return str; } public static void main(String[] args) { Noodles n1; n1= new Noodles();//声明一个Noodle类的对象n1 n1.name=name;//给变量赋值 n1.price = 10;//给变量赋值 n1.num = num;//给变量赋值 //输出 System.out.print("您点的是"+n1.name);//打印变量 System.out.print(" 价格:"+n1.price);//打印变量 System.out.println(" 数量"+ n1.num);//打印变量 float s= n1.getPrice(); System.out.println("第一份商品原价为:"); System.out.println(s);//打印变量 n1.setPrice(15.0f); System.out.println("第一份商品调价:"); System.out.println(n1.toString());//打印变量 Noodles n2= new Noodles("老北京牛肉面",15.0f,3); System.out.println(n2.toString());//打印变量 } }