Java关键字(一):package 和 import
前言
本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注博主!
也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!让我们在成长的道路上互相学习,欢迎关注!
上一篇:面向过程与面向对象
一、“ package ” 关键字的使用
1. 概述
(1)为了更好的实现项目中类的管理,提供包的概念。
(2)
package
语句作为Java源文件的第一条语句,指明该文件中定义的类所在的包。(若缺省该语句,则指定为无名包)。
它的格式为:package 顶层包名.子包名 ;
packagepack1.pack2;//指定类PackageTest属于包pack1.pack2publicclassPackageTest{publicvoiddisplay(){System.out.println("in method display()");}}
(3)包,属于标识符,遵循标识符的命名规则、规范(xxxyyyzzz)、“见名知意”,通常用小写单词标识。
(4)包对应于文件系统的目录,
package
语句中,用 “.” 来指明包(目录)的层次,每 “.” 一次,就代表一层文件目录。
(5)一个包下,不能命名同名的接口、类。不同的包下,可以命名同名的接口、类。
2. 作用
(1)包帮助管理大型软件系统:将功能相近的类划分到同一个包中。比如:
MVC
的设计模式。
MVC设计模式:
MVC是常用的设计模式之一,将整个程序分为三个层次:视图模型层,控制器层,与
数据模型层。这种将程序输入输出、数据处理,以及数据的展示分离开来的设计模式
使程序结构变的灵活而且清晰,同时也描述了程序各个对象间的通信方式,降低了程 序的耦合性。
- 模型层 model 主要处理数据- 数据对象封装 model.bean/domain- 数据库操作类 model.dao- 数据库 model.db
- 控制层 controller 处理业务逻辑- 应用界面相关 controller.activity- 存放fragment controller.fragment- 显示列表的适配器 controller.adapter- 服务相关的 controller.service- 抽取的基类 controller.base
- 视图层 view 显示数据- 相关工具类 view.utils- 自定义view view.ui
(2)包可以包含类和子包,划分项目层次,便于管理。
(3)解决类命名冲突的问题。
(4)控制访问权限。
3.JDK中主要的包介绍
包名功能
java.lang
包含一些Java语言的核心类,如
String
、
Math
、
Integer
、
System
和
Thread
,提供常用功能
java.net
包含执行与网络相关的操作的类和接口
java.io
包含能提供多种输入/输出功能的类
java.util
包含一些实用工具类,如定义系统特性、接口的集合框架类、使用与日期日历相关的函数
java.text
包含了一些java格式化相关的类
java.sql
包含了java进行JDBC数据库编程的相关类/接口
java.awt
包含了构成抽象窗口工具集(abstract window toolkits)的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)
二、“ import ”关键字的使用
1. 概述
(1)为使用定义在不同包中的Java类,需用
import
语句来引入指定包层次下所需要的类或全部类,
import
语句告诉编译器到哪里去寻找类。
(2)语法格式:import 包名. 类名
importpack1.pack2.Test;//import pack1.pack2.*;表示引入pack1.pack2包中的所有结构publicclassPackTest{publicstaticvoidmain(String args[]){Test t =newTest();//Test类在pack1.pack2包中定义
t.display();}}
(3)在源文件中显式的使用
import
结构导入指定包下的类、接口。
(4)
import
语句声明在包的声明和类的声明之间。
(5)如果需要导入多个结构,则并列写出即可。
(6)可以使用 “
xxx.*
” 的方式,表示可以导入xxx包下的所有结构,如:使用
java.util.*
的方式,一次性导入
util
包下所有的类或接口。
(7)如果导入的类或接口是
java.lang
包下的,或者是当前包下的,则可以省略此
import
语句。
(8)如果在源文件中,使用了不同包下的同名的类,则必须至少有一个类需要以全类名的方式显示。
(9)如果已经导入
java.a
包下的类。那么如果需要使用a包的子包下的类的话,仍然需要导入。
(10)
import static
组合的使用:调用指定类或接口下的静态的属性或
2. 代码演示
packagecom.atguigu.java2;importjava.lang.reflect.Field;importjava.util.*;importcom.test1.exer4.Account;importcom.test1.exer4.Bank;importcom.test1.java2.java3.Dog;importstaticjava.lang.System.*;importstaticjava.lang.Math.*;publicclassPackageImportTest{publicstaticvoidmain(String[] args){String info =Arrays.toString(newint[]{1,2,3});Bank bank =newBank();ArrayList list =newArrayList();HashMap map =newHashMap();Scanner s =null;System.out.println("hello!");Person p =newPerson();Account acct =newAccount(1000);//全类名的方式显示com.test1.exer3.Account acct1 =newcom.test1.exer3.Account(1000,2000,0.0123);Date date =newDate();java.sql.Date date1 =newjava.sql.Date(5243523532535L);Dog dog =newDog();Field field =null;
out.println("hello");long num =round(123.434);}}
版权归原作者 小老师ir 所有, 如有侵权,请联系我们删除。