“Java任务:建立商品对象”的版本间的差异

来自CloudWiki
跳转至: 导航搜索
(创建页面,内容为“==任务描述== *餐品是商院面馆管理系统中最重要的商品。 *所有餐品都具有名称、价格、数量等属性。 *本任务要求使用Java语…”)
 
练习:建立用户类User
 
(未显示同一用户的7个中间版本)
第3行: 第3行:
 
*所有餐品都具有名称、价格、数量等属性。
 
*所有餐品都具有名称、价格、数量等属性。
 
*本任务要求使用Java语言建立“面条类”作为模板,描述面条作为商品的共有属性,并创建面条对象(实例)来管理系统中每碗面条的数据。
 
*本任务要求使用Java语言建立“面条类”作为模板,描述面条作为商品的共有属性,并创建面条对象(实例)来管理系统中每碗面条的数据。
*[[文件:Java3-102.jpg]]
+
*[[文件:ai2020-4-20.png|600px]]
  
 
==任务实现:建立商品对象==
 
==任务实现:建立商品对象==
第10行: 第10行:
 
*在包创建对话框中,输入包名 com.shangzhi.entity,点击 finish按钮,完成包的创建
 
*在包创建对话框中,输入包名 com.shangzhi.entity,点击 finish按钮,完成包的创建
 
*在包com.shangzhi.entity1上点击右键,选择菜单 New-Class 创建类
 
*在包com.shangzhi.entity1上点击右键,选择菜单 New-Class 创建类
*输入类名Book,勾选红框内的复选框(包含main方法),点击Finish按钮完成Book类创建
+
*输入类名Noodles,勾选红框内的复选框(包含main方法),点击Finish按钮完成Noodles类创建
 +
 
 +
<nowiki>
 +
 
 +
public class Noodles {
 +
 +
 +
 +
public static void main(String[] args) {       
 +
       
 +
}
 +
 
 +
}
 +
</nowiki>
 +
===通过类创建对象===
 +
在main方法中通过类创建对象:
 +
 
 +
  Noodles n1;
 +
  n1= new Noodles();//声明一个Noodle类的对象n1 
 +
 
 
===为类添加成员变量===
 
===为类添加成员变量===
*在 Book类中插入代码,增加图书编号、名称、作者、库存数量、分类、价格成员变量,注意选择合适的数据类型
+
*在Noodles类中插入代码,增加名称、价格、数量,注意选择合适的数据类型
         <nowiki>String bid; // 书籍编号
+
 
String name; // 书籍名字
+
         <nowiki>
String author; // 书籍作者
+
public class Noodles {
int number; // 书籍库存
+
        //商品的名称
        float price;//书籍价格
+
public String name;
String category; // 书籍详细分类(类目)</nowiki>
+
//商品的价格
 +
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
 +
             
 +
 +
}
 +
 
 +
}</nowiki>
 +
 
 +
在main方法中读写这几个变量:
 +
 
 +
<nowiki>
 +
 
 +
  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);//打印变量
 +
}</nowiki>
 
===为类添加构造方法===
 
===为类添加构造方法===
*在 Book类中插入代码,增加包含空构造方法、包含6个参数的构造方法,方便将来创建图书对象
+
*在 Noodles类中插入代码,增加包含空构造方法、包含6个参数的构造方法,方便将来创建图书对象
  <nowiki>/*
+
  <nowiki>
* 空构造函数
+
    //空构造方法
*/
+
public Noodles(){
public Book() {
+
 +
    }
 +
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 Book(String bid, String name, String author, int number, String category,float price) {
 
               
 
this.bid = bid;//这里的this表示本类的bid属性,也可以不加
 
this.name = name;
 
this.author = author;
 
this.number = number;
 
this.category = category;
 
                this.price = price;
 
 
}</nowiki>
 
}</nowiki>
  
*在 Book 类中插入代码,增加toString()方法,用于将图书信息转化为字符串,方便将来输出图书对象信息
+
 
  <nowiki>@Override
+
在main方法中尝试通过构造方法创建对象:
public String toString() {
+
 
{
+
<nowiki>
return "商品编号:" + this.bid + " | 商品名:" + this.name + " | 类目:" + this.category + " | 商品总数:" + this.number+ " |商品价格:"+this.price;
+
Noodles n2= new Noodles("老北京牛肉面",15.0f,3);
}</nowiki>
+
System.out.println(n2.toString());//打印变量 </nowiki>
===建立主类,创建对象===
+
 
*在工程下面新建一个类MainClass ,在 该类的main 方法中插入代码,分别利用两个构造方法(无参和带参)创建图书对象b1和b2,并在控制台输出图书信息
+
===添加成员方法===
 +
*在Noodles类中插入代码,增加成员方法getPrice和setPrice
 +
 
 +
<nowiki>
 +
        public float getPrice( ){
 +
    System.out.println("该商品的价格为 : " + price);
 +
    return price;
 +
}
 +
public void setPrice(float p) {
 +
this.price =p;
 +
}
 +
</nowiki>
 +
 
 +
*在 Noodles 类中插入代码,增加toString()方法,用于将面品信息转化为字符串,方便将来输出面品对象信息
 +
 
 +
  <nowiki>
 +
public String toString() {
 +
String str ="商品名称:"+this.name+  
 +
    " 价格:"+this.price+
 +
    " 数量:"+ this.num;
 +
return str;
 +
}
 +
</nowiki>
 +
 
 +
===在main类中创建对象===
 +
*在本类的main 方法中插入代码,分别利用两个构造方法(无参和带参)创建图书对象b1和b2,并在控制台输出图书信息
 
  <nowiki>public static void main(String[] args) {
 
  <nowiki>public static void main(String[] args) {
Book b1 = new Book();
+
                Noodles n1;
b1.bid = "b01";
+
                n1= new Noodles();//声明一个Noodle类的对象n1 
b1.name = "三国演义";
+
                n1.name=name;//给变量赋值
b1.author = "罗贯中";
+
        n1.price = 10;//给变量赋值
b1.number = 40;
+
        n1.num = num;//给变量赋值
b1.category = "小说";
+
       
+
        //输出
Book b2 = new Book("b02", "Java核心技术", "霍斯特曼", 50, "软件编程");
+
        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());//打印变量
 +
 
  
System.out.println("图书 b1 " + b1);
 
System.out.println("图书 b2 " + b2);
 
 
}
 
}
 
}</nowiki>
 
}</nowiki>
 
*点击运行该程序,查看输出结果
 
*点击运行该程序,查看输出结果
  
==完整代码==
+
==练习:建立用户类User==
  <nowiki>package entity;
+
商院面馆网站建了一个用户类,仿照商品类,为它建立成员变量、构造方法、成员方法,并在main方法中创建对象调用他们。
 +
 
 +
  <nowiki>
  
public class Book {
+
public class User {
    String bid; // 书籍编号
+
    public String name;
    String name; // 书籍名字
+
    public String pwd;
    String author; // 书籍作者
+
   
    int number; // 书籍库存
+
    public User() {
    float price;//书籍价格
+
   
    String category; // 书籍详细分类(类目)
+
    }
+
    public User(String n,String p) {
/*
+
    this.name = n;
* 空构造函数
+
    this.pwd = p;
*/
+
    }
public Book() {
+
    public void setName(String name) {
+
    this.name = name;
}
+
    }
+
    public void setPwd(String pwd) {
/*
+
    this.pwd = pwd;
* 含六个参数的构造函数
+
    }
*/
+
public Book(String bid, String name, String author, int number, String category,float price) {
+
    public String toString() {
               
+
    String s="";
this.bid = bid;//这里的this表示本类的bid属性,也可以不加
+
    s= "姓名:"+this.name + " 密码:" +this.pwd;
this.name = name;
+
    return s;
this.author = author;
+
    }
this.number = number;
+
public static void main(String[] args) {
this.category = category;
+
// TODO Auto-generated method stub
        this.price = price;
+
User u1 =  new User();
}
+
u1.setName("wangli");u1.setPwd("000000");
+
System.out.println(u1.toString());
public float getPrice(){
+
User u2 = new User("chenming","123456");
return this.price;
+
System.out.println(u2.toString());   
}
 
public void setPrice(float p){
 
this.price=p;
 
}
 
public void ShowInfo()  
 
{
 
 
System.out.println( "商品编号:" + this.bid + " | 商品名:" + this.name  
 
+" | 作者:" + this.author+ " | 类目:" + this.category + " | 商品总数:" + this.number+
 
" |商品价格:"+this.price);
 
}
 
 
@Override
 
public String toString()  
 
{
 
return "商品编号:" + this.bid + " | 商品名:" + this.name
 
+" | 作者:" + this.author+ " | 类目:" + this.category + " | 商品总数:" + this.number+
 
" |商品价格:"+this.price+"\n";
 
}
 
  
 +
}
  
 +
}
 +
</nowiki>
  
public static void main(String[] args) {
+
==完整代码==
Book b1 = new Book();
+
<nowiki>
b1.bid = "b01";
+
public class Noodles {
b1.name = "三国演义";
+
//商品的名称
b1.author = "罗贯中";
+
public String name;
b1.number = 40;
+
//商品的价格
b1.category = "小说";
+
public float price;
 +
//商品的数量,
 +
public int num;
 +
 +
//空构造方法
 +
public Noodles(){
 
 
Book b2 = new Book("b02", "Java核心技术", "霍斯特曼", 50, "软件编程",55.0f);
+
    }
 +
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;
 +
}
 +
}
  
System.out.println("图书 b1 " + b1);
+
public String toString() {
System.out.println("图书 b2 " + b2);
+
String str ="名称"+this.name+
 +
    " 价格:"+this.price+
 +
    " 数量:"+ this.num;
 +
return str;
 
}
 
}
}</nowiki>
+
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());//打印变量
  
返回 [[Java程序设计]]
+
                Noodles n2= new Noodles("老北京牛肉面",15.0f,3);
 +
                System.out.println(n2.toString());//打印变量
 +
        }
 +
}</nowiki>

2020年4月12日 (日) 06:27的最新版本

任务描述

  • 餐品是商院面馆管理系统中最重要的商品。
  • 所有餐品都具有名称、价格、数量等属性。
  • 本任务要求使用Java语言建立“面条类”作为模板,描述面条作为商品的共有属性,并创建面条对象(实例)来管理系统中每碗面条的数据。
  • Ai2020-4-20.png

任务实现:建立商品对象

创建项目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());//打印变量
        }
}