今日内容总结:
1,形式参数问题研究
基本数据类型,实际参数传递的是当前这个数据值
引用数据类型:需要传递数组对象 类: 具体类:传递的当前类的对象
方法的形式参数引用类型: 调用该方法,实际参数需要传递的是当前抽象类的子类对象! (抽象类多态)
2.包(package)
包(package)java 中包里面存储的就是java文件(src目录:源码目录 包 xx.java)
包的分类:包又分为单级包和多级包
单级包: com xxx.java 多级包:cn.hsbc.www xxx.java
注意事项:在刚开始书写包的过程中,尽量使用多级包,包在真实开发环境中,代码分包,分层
重点:三层架构思想(mvc) M:Model:业务模型 V:View :视图 C:Controller:控制器
实体类层: com.qf.pojo/entity/domain/ /User类Product类/Order类/Cart类/Account类...
业务层: com.qf.service UserService:用户接口 boolean login(User user) ;
UserServiceImpl:接口的实现类 业务逻辑判断
举例:用户登录
从数据库中查询到数据
UserDao ud = new UserDaoImpl() ;
通过用户名查询用户
如果查询到用户了,判断用户的密码是否和用户输入的密码匹配
数据库访问层:UserDao:用户的数据库访问接口
通过用户名来查询用户:
User findUserByUserName(String username) ;
UserDaoImpl :用户的数据库访问接口实现
控制层: UserController类:用户的控制器
调用业务层代码
获取业务数据----通过 JAVAEE技术:实现页面的 跳转:在页面中渲染后台数据
测试层(单元测试): junit单元测试
public class PackageDemo {
public static void main(String[] args) {
System.out.println("学习包的分类");
}
}
3.权限修饰符
权限修饰符分为默认修饰符,private:私有的,protected:受保护的,public:公开的,公共的,访问权限很大
权限修饰符的优先级:public > protected >默认修饰符>private
public class Test2 {
public static void main(String[] args) {
//访问com.qf.permission.PermissionDemo类的方法
//创建PermissionDemo类对象
PermissionDemo pd = new PermissionDemo() ;
// pd.show() ;//默认修饰的方法只能在同一个包下的访问
//pd.show2();//私有的方法只能在当期类中访问
//pd.show3() ;//受保护的方法:同一个包或者子类
pd.show4(); //永远可以访问
}
}
4.研究返回值问题:
方法的返回值类型: 基本数据类型:----返回当前基本类型的具体数据值即可!
引用数据类型 :方法return 需要的该具体类对象!
如果一个方法的返回值是引用类型: 返回值类型是接口类型,需要返回的是该接口的子实现类对象!
5.编程题:
public class Computer {
public void useMobile(USB usb){
usb.work();
}
}
public class MP3 implements USB {
public void work() {
System.out.println("可以使用MP3听音乐...");
}
}
public class U_Disk implements USB {
public void work() {
System.out.println("使用u盘文件的传输");
}
}
public interface USB {
public abstract void work();
}
public class Test {
public static void main(String[] args) {
Computer computer = new Computer() ;
USB usb = new MP3() ;
computer.useMobile(usb);
usb = new U_Disk() ;
computer.useMobile(usb);
}
}
public class Computer {
public void useMobile(USB usb){
usb.work();
}
}
public class MP3 implements USB {
public void work() {
System.out.println("可以使用MP3听音乐...");
}
}
public class U_Disk implements USB {
public void work() {
System.out.println("使用u盘文件的传输");
}
}
public interface USB {
public abstract void work();
}
public class Test {
public static void main(String[] args) {
Computer computer = new Computer() ;
USB usb = new MP3() ;
computer.useMobile(usb);
usb = new U_Disk() ;
computer.useMobile(usb);
}
}
public class Computer {
public void useMobile(USB usb){
usb.work();
}
}
public class MP3 implements USB {
public void work() {
System.out.println("可以使用MP3听音乐...");
}
}
public class U_Disk implements USB {
public void work() {
System.out.println("使用u盘文件的传输");
}
}
public interface USB {
public abstract void work();
}
public class Test {
public static void main(String[] args) {
Computer computer = new Computer() ;
USB usb = new MP3() ;
computer.useMobile(usb);
usb = new U_Disk() ;
computer.useMobile(usb);
}
}