JAVA基础 包package import MVC设计模式

    科技2024-11-05  12

    一、package 包  本质就是几千行代码的类文件,为了提高可读性,拆分到一个包里

        为了更好的实现项目中类的管理,Java提供了包的概念,包。

    说明:

    1、功能上,可以将一个包想象成一个超级大的类文件,有几千行代码。既然在一个文件中,自然包里面的类不允许重名。

    2、文件结构上,包可以类比为工程目录下装java文件的文件夹。

    3、Java源文件(类)放在    src/..n层包路径/         

    说明:同一工程的不同package下,允许相同类文件名。比如包1下有个Attack.java。 包2下,也可以有Attack.java。 但是,如果正在编写哪个类(比如Boss类)想同时调用包1,和包2 的Attack类,这下就重名了。因此在Boss类中,就必须要把Attack类写全,即给Attack类加上包名(包2.Attack 变量)。

    注意:包 和 此包的子包  是完全独立的两个包,子包完全是为了方便管理才放在包下。导入某个包的所有类,不会影响这个包子包里面的类。子包又可以想象成一个子包自己的超级大类文件,有几千行代码。

    包的使用

    语法: 

    package 包路径;  //包路径从工程的src开始往下

    说明:

    1、package声明类或接口所属的包,声明在源文件的首行。

    2、包,属于标识符,遵循标识符的命名规则和命名规范,做到“见名知意”

    3、每“.”一次,就代表一层文件目录。

    4、同一个包下,不能命名同名的接口、类。(其他文件调用,编译器会混)

    扩展:工程下包的分配规则(程序设计模式  以MVC为例)

           如果随心所欲给包取名字,遇到大项目,包多了,管理会非常混乱。因此出现了一些规范来帮助管理包,按照规范来命名包,就会很好的管理工程。 

         一般所有源码都放在src文件夹下。在src文件夹下,再按照程序设计模式来命名各种包。把java源文件(各种类),放在相应的包下。

    MVC设计模式概述

         MVC是常用的设计模式之一,将整个程序分为三个层次:视图模型层,控制器层,与数据模型层。这种将程序输入输出、数据处理,以及数据的展示分离开来的设计模式吏程序结构变的灵活而且清晰,同时也描述了程序各个对象间的通信方式,降低了程序的耦合性。

    1、模型层  model 主要处理数据  

    模型层package路径规范:

    数据对象封装  model.bean/domain

    数据库操作类  model.dao

    数据库             model.db

    1.2控制层  controller处理业务逻辑  

    控制层package路径规范:

    应用界面相关   controller.activity

    存放fragment   controller.fragment

    显示列表的适配器   controller.adapter

    服务相关的           controller.service

    抽取基类              controller.base

    1.3 视图层       view 显示数据   

    视图层package路径规范:

    相关工具类   view.utils

    自定义view   view.ui

    二、import  导入类或接口

        如果想在一个类中使用其他包里面的类或接口,首先需要导入类。

    说明:java核心包里面的类,不用导入也可以使用。比如java.lang包下的String,Scanner都可以直接用。

    注意:如果没有类的使用权限(比如想导入的类用了private封装),导入过来也没法用。

    导入方法:   

    import关键字可以导入指定包下的类、接口

    语法: import 类路径;    //类路径就是包路径+类文件   路径从工程src文件夹的包开始

                import 包路径.*; //如果需要用某个包里面的大多数,可以通过*一次性将包里面的公共类导入完

    特别: import static 包路径.* //导入指定类或接口中的静态结构:即类的static 属性或方法。 导入后的效果就是,可以直接用导入类的属性或方法,不用再写类名.属性(方法)。(极少使用,了解即可

    特别注意:*只导入包里面的类,包里面还有子包,子包里面的类没有导入。

    说明:

    1、import声明 在 包的声明 和 类的声明  之间

    2、如果在源文件中,使用了不同包下的同名类,则必须至少有一个类需要以全类名的方式显示。

    全类名:包路径.类名  //其实就是类路径

    3、import的是导入类、接口。  import static是导入属性或方法。

    exp:import static java.lang.Math.*;  //导入以后,就不用写 Math.round()了,直接round(),就可以了

             import static java.lang.System.* //导入以后,就不用写System.out.println(),直接out.println()就可以了。

     

    Processed: 0.039, SQL: 8