public class Test {
public static void main(String[] args) {
int num;//定义了一个int类型的变量num
num=123;
//new用来创建对象——给对象开辟储存空间
Product p1=new Product();//定义了一个Product类型的变量p1
Shop shop1=new Shop();
User user1=new User();
p1.productId=1;
p1.productName="过桥米线";
System.out.println(p1.productId);
System.out.println(p1.productName);
System.out.println("----------------------");
System.out.println(p1);
Product p2=new Product();
System.out.println(p2.productId);
System.out.println(p2.productName);
System.out.println("-----------------------");
System.out.println(p2);
// Product p3=p2;
// System.out.println(p3);
System.out.println("------------------------");
Product p3=new Product(3,"煎饼果子","小吃",8,100,"好吃不贵");
System.out.println(p3.productName);
}
}
public class Product {
//类成员变量——属性
private int productId;
private String productName;
private String productType;
private float productPrice;
private int productStock;
private String productDesc;
//构造方法没有返回值类型-向计算机申请储存空间,构造方法名和类名相同
public Product() {//为对象开辟储存空间,给属性赋默认值
//补上一个无参构造
}
public Product(int ProductId) {
}
public Product(int productId,String productName,String productType,float productPrice,int productStock,String productDesc) {
//通过参数给所创建的对象赋值,创建的对象是谁,就给哪个对象赋值
this.productId=productId;
this.productName=productName;
this.productType=productType;
this.productPrice=productPrice;
this.productStock=productStock;
this.productDesc=productDesc;
}
//公共访问方法
//get-获得,得到数据,得到return值
public int getProductId() {
return productId;
}
//set-设置,给变量赋值,通过参数给当前对象的属性赋值
public void setProductId(int productId) {
this.productId=productId;
}
public String getProductName() {
return productName;
}
public void setProductName(String productName) {
this.productName = productName;
}
public String getProductType() {
return productType;
}
public void setProductType(String productType) {
this.productType = productType;
}
public float getProductPrice() {
return productPrice;
}
public void setProductPrice(float productPrice) {
this.productPrice = productPrice;
}
public int getProductStock() {
return productStock;
}
public void setProductStock(int productStock) {
this.productStock = productStock;
}
public String getProductDesc() {
return productDesc;
}
public void setProductDesc(String productDesc) {
this.productDesc = productDesc;
}
@Override//打印对象时自动将对象转化成字符串形式
public String toString() {
return "Product [productId=" + productId + ", productName=" + productName + ", productType=" + productType
+ ", productPrice=" + productPrice + ", productStock=" + productStock + ", productDesc=" + productDesc
+ "]";
}
}
//封装
public class Shop {
private int shopId;
private String shopName;
private String shopAddress;
private String shopTelephone;
public Shop() {
}
public Shop(int shopId, String shopName, String shopAddress, String shopTelephone) {
super();
this.shopId = shopId;
this.shopName = shopName;
this.shopAddress = shopAddress;
this.shopTelephone = shopTelephone;
}
public int getShopId() {
return shopId;
}
public void setShopId(int shopId) {
this.shopId = shopId;
}
public String getShopName() {
return shopName;
}
public void setShopName(String shopName) {
this.shopName = shopName;
}
public String getShopAddress() {
return shopAddress;
}
public void setShopAddress(String shopAddress) {
this.shopAddress = shopAddress;
}
public String getShopTelephone() {
return shopTelephone;
}
public void setShopTelephone(String shopTelephone) {
this.shopTelephone = shopTelephone;
}
}
//类的本质是类型type,是根据特定需求而创建的类型
//对创建的类型定义的变量就是对象
//要让对象正常使用,需要通过构造方法给对象申请储存空间
//构造方法的特征//创建类默认会有一个无参的构造方法
//构造方法名和类名一致-为了向计算机说明申请多大的存储空间
//构造方法无返回值类型
// 有参构造什么含义-在申请空间的同时赋初值-通过参数给当前对象2赋值
//如果给类添加有参构造,会将默认无参构造覆盖-通常都进行手动添加
//对象保存的是所申请空间的地址
public class User {
int userId;
String userName;
String password;
String userTelephone;
String userAddress;
public User() {
}
}
public class TestProduct {
public static void main(String[] args) {
Product p1=new Product();
p1.setProductId(1);
p1.setProductName("可乐");
p1.setProductType("饮品");
p1.setProductPrice(3);
p1.setProductStock(50);
p1.setProductDesc("冰爽怡人");
System.out.println(p1.getProductId());
System.out.println(p1.getProductName());
System.out.println(p1.getProductType());
System.out.println(p1.getProductPrice());
System.out.println(p1.getProductStock());
System.out.println(p1.getProductDesc());
System.out.println(p1);
}
}