十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
你说的是网上流传的宠物商店web版的代码吧
创新互联服务紧随时代发展步伐,进行技术革新和技术进步,经过十余年的发展和积累,已经汇集了一批资深网站策划师、设计师、专业的网站实施团队以及高素质售后服务人员,并且完全形成了一套成熟的业务流程,能够完全依照客户要求对网站进行成都做网站、网站制作、建设、维护、更新和改版,实现客户网站对外宣传展示的首要目的,并为客户企业品牌互联网化提供全面的解决方案。
Java版本的名字叫:J2EE Java Pet Store
.NET版本的叫:.NET PetShop
百度一下J2EE Java Pet Store,这是一套经典示例代码
import java.awt.*; public class TowerPoint //公共类TowerPoint { int x,y; //定义2个int类型的变量 boolean 有盘子; //定义一个boolean类型的变量 Disk 盘子=null; //初始化一个对象"盘子"并赋值为空 HannoiTower con=null; //初始化一个HannoiTower类的对象"con"并赋值为空public TowerPoint(int x,int y,boolean boo) //构造函数,有3个参数,x,y,boo { this.x=x; //将参数赋给当前x this.y=y; //将参数赋给当前y有盘子=boo; //将boo赋给"有盘子" } public boolean 是否有盘子() //定义一个返回boolean类型的方法"是否有盘子" { return 有盘子; //返回boolean类型的"有盘子" } public void set有盘子(boolean boo) //set方法,并且参数为boolean { 有盘子=boo; //将boo赋给有盘子 } public int getX() //取得x方法 { return x; //返回x } public int getY()//取得y方法 { return y; //返回y } public void 放置盘子(Disk 盘子,HannoiTower con) //定义一个有2个参数的"放置盘子"方法。参数是Disk类和HannoiTower类 { this.con=con; //当前con等于参数con con.setLayout(null); //调用on对象的方法setLayout,并设置为空 this.盘子=盘子; //当前盘子等于参数盘子 con.add(盘子); //con对象的add方法,加入"盘子"对象 int w=盘子.getBounds().width; //定义并给一个int类型的w变量一个值,值为"盘子.getBounds().width" int h=盘子.getBounds().height; //定义并给一个int类型的h变量一个值,值为"盘子.getBounds().height" 盘子.setBounds(x-w/2,y-h/2,w,h);//调用"盘子"对象的setBounds方法,并把传递值 有盘子=true;//boolean类型的对象"有盘子"等于true con.validate(); //调用con对象的validate方法 } public Disk 获取盘子() //定义"获取盘子"方法,方法返回Disk对象 { return 盘子; //返回盘子 } } -----------------------另外说一下,楼主太抠门了!!!!!!!!只给5分-----------------------
/*
animal是个抽象方法,Cat 和Dog extends 这个就是用的多态
*/
package Test;
public class Test{
public static void main(String[] args){
Feeder feeder = new Feeder();
feeder.feedAnimals();
}
}
abstract class Animal{
public abstract void eat(String s);
}
class Dog extends Animal{
private final String FOOD = "bone";
@Override
public void eat(String s){
if (s == FOOD)
System.out.println("Dog is eating bones");
else
System.out.println("Not "+this.FOOD+", Dog don't want to eat");
}
}
class Cat extends Animal{
private final String FOOD = "fish";
@Override
public void eat(String s){
if (s == FOOD)
System.out.println("Cat is eating fishes");
else
System.out.println("Not "+this.FOOD+", Cat don't want to eat");
}
}
class Feeder{
private final String[] FOODS = {"fish", "bone", "shit"};
private Animal cat;
private Animal dog;
Feeder(){
dog = new Dog();
cat = new Cat();
}
public void feedAnimals(){
System.out.println("Feeding animals...");
String food;
for(int i = 0; i FOODS.length; i++){
food = FOODS[i];
if(food == "fish")
this.cat.eat(food);
else if(food == "bone")
this.dog.eat(food);
else{
System.out.println("Not Fishes or Bones, is "+ food);
}
}
System.out.println("Done!");
}
}
//望采纳,打这么多字不容易
//用eclipse软件
一、问题描述
设计一个宠物商店,在商店中可以有多种宠物,试表示出此种关系,并要求可以根据关键字查找相应的宠物信息。所需要的宠物信息自行设定。
1、可以保存多个宠物的信息
2、宠物的属性:名字、年龄等
3、可以实现宠物上架、下架、模糊查询等功能。
实现思路
1.首先需要定义一个宠物类,因为宠物种类有很多,因此需要定义一个抽象类。该类中需要包含宠物的各种信息,例如:种类、名字、年龄、雌雄等。
2.有了宠物后还需要定义一个商店类,来存放各种宠物。该商店类可以展示出商店内的宠物信息,以满足用户需求。
3.因为要实现宠物的上架和下架操作,因此还需要定义一个上架类和下架类。可以通过该类对宠物进行上架和下架操作,以存放到商店中。
4.要实现模糊查询功能,需要定一个查询类,该类可以通过输入关键字来查询商店内的宠物信息来展现出来。
5.要实现上诉功能,还需要定义一个测试类,来实现上述操作。
代码实现:
1.宠物类
package 宠物商店;
public abstract class 宠物类 {
public String species; //种类
public String name; //名字
public String sex; //雌雄
public int age; //年龄
public 宠物类() {
}
public 宠物类(String species,String name,String sex,int age) {
this.species=species;
this.name=name;
this.sex=sex;
this.age=age;
}
public abstract void pet1();
public void setspecies(String species) {
this.species=species;
}
public String getspecies() {
return species;
}
public void setname(String name) {
this.name=name;
}
public String getname() {
return name;
}
public void setsex(String sex) {
this.sex=sex;
}
public String getsex() {
return sex;
}
public void setage(int age) {
this.age=age;
}
public int getage() {
return age;
}
}
2.商店类
package 宠物商店;
public class 商店类 extends 宠物类{
public 商店类(String species,String name,String sex,int age) {
super(species, name, sex,age);
}
public void pet1() {
System.out.println("宠物种类:"+species+"\t宠物名称:"+name+"\t宠物性别"+sex+"\t宠物年龄"+age+"岁");
}
static 商店类 doug1=new 商店类("金毛","豆豆","雄性",1);
static 商店类 doug2=new 商店类("牧羊犬","花花","雌性",2);
static 商店类 doug3=new 商店类("泰迪","毛毛","雄性",1);
static 商店类 doug4=new 商店类("二哈","笨笨","雌性",2);
static 商店类 cat1=new 商店类("加菲猫","胖胖","雄性",1);
static 商店类 cat2=new 商店类("波斯猫","玲玲","雌性",2);
}
3.下架类
package 宠物商店;
import java.util.Scanner;
public class 下架类 {
public static void XJ() {
Scanner scanner = new Scanner(System.in);
System.out.println("现在本店有以下宠物:");
商店类.doug1.pet1();
商店类.doug2.pet1();
商店类.doug3.pet1();
商店类.doug4.pet1();
商店类.cat1.pet1();
商店类.cat2.pet1();
System.out.println("请您选择要下架的宠物名称");
String name = scanner.next();
System.out.println("您好,您已成功下架名字为:"+name+"的宠物");
}
}
4.上架类
package 宠物商店;
import java.util.Scanner;
public class 上架类 {
public static String species; //种类
public static String name; //名字
public static String sex; //雌雄
public static int age; //年龄
public static void SJ() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你要上架宠物的种类:");
species=scanner.next();
System.out.println("请输入你要上架宠物的名字:");
name=scanner.next();
System.out.println("请输入你要上架宠物的雌雄:");
sex=scanner.next();
System.out.println("请输入你要上架宠物的年龄:");
age=scanner.nextInt();
商店类 cw=new 商店类(species,name,sex,age);
System.out.println("恭喜您,您已经成功上架:");
cw.pet1();
System.out.println("现在本商店有:");
商店类.doug1.pet1();
商店类.doug2.pet1();
商店类.doug3.pet1();
商店类.doug4.pet1();
商店类.cat1.pet1();
商店类.cat2.pet1();
cw.pet1();
}
}
5.查询类
package 宠物商店;
import java.util.Scanner;
public class 查询类 {
public static void CX() {
Scanner scanner = new Scanner(System.in);
System.out.println("尊敬的顾客您好,我会为您提供最优的服务");
System.out.println("1:查询本店宠物种类\t2:查询本店宠物信息");
int n = scanner.nextInt();
if(n==1) {
System.out.println("尊敬的顾客,目前本店有:1、宠物狗\t2、宠物猫");
}
if(n==2) {
System.out.println("请输入您要查询宠物的种类信息:");
String name = scanner.next();
if(name.equals("狗")||name.equals("gou")) {
System.out.println("本店提供"+name+"的品种为:");
商店类.doug1.pet1();
商店类.doug2.pet1();
商店类.doug3.pet1();
商店类.doug4.pet1();
}
else if(name.equals("猫")||name.equals("mao")) {
System.out.println("本店提供"+name+"的品种为:");
商店类.cat1.pet1();
商店类.cat2.pet1();
}
else {
System.out.println("给常抱歉,本店不能提供你所需要的宠物:"+name);
}
}
}
}
6.测试类
package 宠物商店;
import java.util.Scanner;
public class 测试类 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("**********欢迎来到宠物商店在线系统**********");
System.out.println("我们将为您提供最优秀的服务,请您做以下选择");
System.out.println("1:员工登录\t2:尊敬的顾客");
int i = scanner.nextInt();
if(i==1){
System.out.println("亲爱的员工您好,请选择您要进行的操作:");
System.out.println("1:对宠物进行上架操作\t2:对宠物进行下架操作");
int n = scanner.nextInt();
if(n==1) {
//转到上架类
上架类.SJ();
}
if(n==2) {
//转到下架类
下架类.XJ();
}
}
if(i==2) {
查询类.CX();
}
}
}
public class Pet {
//pet的属性
private String name;
private int age;
private char gengder;
//提供无参构造方法
public Pet() {
super();
}
//提供有参构造方法
public Pet(String name, int age, char gengder) {
super();
this.name = name;
this.age = age;
this.gengder = gengder;
}
//提供get/set方法
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 char getGengder() {
return gengder;
}
public void setGengder(char gengder) {
this.gengder = gengder;
}
//重写tostring方法
@Override
public String toString() {
return "Pet [name=" + name + ", age=" + age + ", gengder=" + gengder + "]";
}
}
封装的基本语法:
属性私有化
提供无参和有参构造方法
提供get/set方法
重写tostring方法