userdao怎么写

1.UserDAO userDao= new UserDAOImpl();首先 , dao只是一种命名习惯问题 , 一般MVC中的M层都是这个命名 , UserDao肯定就是涉及到对用户的操作的方法接口的集合 , 也就是Dao是个接口:一系列方法的集合 , 只写方法名 , 而不用实现 。UserDaoImpl , 就是对Dao方法的实现 , 这是分层的思想 , 降低耦合 。
对于这句代码 , 就是一个声明 , 类比对象的实例化 , 这是接口的实例化 , 也就是新声明一个userdao , 他可以调用userdaoimpl中的所有方法 。如果单纯的写UserDao userdao=new UserDao();是错误的 , 也是没有意义的 , 因为UserDao是一个接口 。
2.biang怎么写[一]
一点飞上天 , 黄河两边弯;八字大张口 , 言字往里走 , 左一扭 , 右一扭;西一长 , 东一长 , 中间加个马大王;心字底 , 月字旁 , 留个勾搭挂麻糖;推了车车走咸阳 。
[二]
一点上了天 , 黄河两道弯 , 八字大张口 , 言字往里走 , 左一扭、右一扭 , 中间夹个言篓篓 , 你也长、我也长 , 里面坐个马大王 , 心字底 , 月字旁 , 留个钩搭挂麻糖 , 推个车子游咸阳 。
[三]
老鸦一点飞上天 , 门口黄河两道弯 。中间八字大张口 , 口出一言往里走 , 你在东边纽一纽 , 我在西边纽一纽 。左长长 , 右长长 , 中间霸着马大王 。月旁心底留个钩 , 担挂麻糖走咸阳 , 坐个车车逛西安 。
[四]
一点上了天 , 黄河两道湾 , 八字大张口 , 言字往进走 , 你一扭我一扭 , 你一长我一长 , 当中加个马大王 , 心字底月字旁 , 挂个丁丁叫马杠 , 坐着车车逛咸阳 。
[五]
一点飞上天 ,  河水流两边 , 八字大张口 ,  言字往里走 , 左扭扭 , 右扭扭 ,  你家长 , 我家长 ,  当中夹个马大王 ,  心衬底 , 月照光 ,  留个勾搭挂麻糖 ,  坐上车车逛咸阳 。
3.java,User类用list怎么写import java.util.Collection; import java.util.concurrent.ConcurrentHashMap; public class Main { public static void main(String[] args) { UserDao userDao = new UserDaoImpl(); for (int i=0; i<10; ++i) { userDao.addUser(new User(i, "UName_" + i, "12345" + i, i % 2 == 0 ? UserDao.FEMALE : UserDao.MALE)); } try { User user = userDao.findUser("UName_1"); user.setUId(11); userDao.updateUser(user); } catch(Exception e) { System.out.println(e.getMessage()); e.printStackTrace(); } } } class UserDaoImpl implements UserDao { private ConcurrentHashMap container = new ConcurrentHashMap<>(); @Override public User findUser(String UName) { Collection users = container.values(); if (!users.isEmpty()) { for (User user : users) { if (user.getUName().equals(UName)) { return user; } } } return null; } @Override public int addUser(User user) { container.put(user.getUId(), user); return 1; } @Override public int updateUser(User user) { User u = findUser(user.getUName()); if (null != u && u.getUId() != user.getUId()) { throw new RuntimeException("不能修改UId"); } container.put(user.getUId(), user); // 覆盖原来的就可以了 return 1; } } interface UserDao { int FEMALE = 1; int MALE = 2; User findUser(String UName); int addUser(User user); int updateUser(User user); } class User { private int UId; private String UName; private String UPass; private int gender; public User() { } public User(int UId, String UName, String UPass, int gender) { this.UId = UId; this.UName = UName; this.UPass = UPass; this.gender = gender; } public String getUserinfo() { return this.toString(); } @Override public String toString() { return "User{" + "UId=" + UId + ", UName='" + UName + '\'' + ", UPass='" + UPass + '\'' + ", gender=" + gender + '}'; } public int getUId() { return UId; } public void setUId(int UId) { this.UId = UId; } public String getUName() { return UName; } public void setUName(String UName) { this.UName = UName; } public String getUPass() { return UPass; } public void setUPass(String UPass) { this.UPass = UPass; } public int getGender() { return gender; } public void setGender(int gender) { this.gender = gender; } } 。