Android应用编程基础第22篇:Java中的import
上一篇我们讲了包(package)的概念以及使用。今天我们讲讲如何在一个类中访问其他在不同包中的类的成员,这里我们要学习一个新的关键字import。
到目前为止,所介绍的类都是属于同一个包(package)的,因此在程序代码的编写上并不需要做修改。但如果几个类分别属于不同的包(package)时,在某个类要访问到其它类的成员时,则必须做下列的修改:
若某个类需要被访问时,则必须把这个类公开出来,也就是说,此类必须声明成public(公开的)。
若要访问不同 package 内某个 public 类的成员时,在程序代码内必须明确地指明“被访问包名称.类名称”。可以看下面这个例子:
范例:Person.java
01 package demo.java.a ;
02
03 public class Person
04 {
05 public String talk()
06 {
07 return "Person ——>> talk()" ;
08 }
09 }
范例:TestPackage1.java
01 package demo.java.b ;
02
03 class TestPackage1
04 {
05 public static void main(String[] args)
06 {
07 System.out.println(new demo.java.a.Person().talk()) ;
08 }
09 }
输出结果:
Person ——>> talk()
程序说明:
程序中并没有使用 import 语句,但是在程序TestPackage1.java的第 7 行使用 Person 类的时候使用了“包名.类名”的方式使用了 Person 类,所以在程序中可以使用此方法来使用非本类所在的包中的类。
如果通过 import 命令,可将某个 package 内的整个类导入,因此后续的程序代码便不用再写上被访问 package 的名称了。我们来看看如何使用“import”导入包。
包(package)导入的格式如下:
import 包名称.类名称;
下面再举个例子来说明 import命令的用法,该例子与TestPackage1类似,我们在TestPackage2.java中使用了import来导入Person类:
图1 包的导入
图1说明:
在包damo.java.a中有一个名为Person的类,类中有一个talk方法,在包demo.java.b中有一个名为TestPackage2的类,如果我们需要调用Person类中的talk()方法,就需要在TestPackage2类中加入一行import demo.java.a.Person;。
范例:Person.java
01 package demo.java.a ;
02
03 public class Person
04 {
05 public String talk()
06 {
07 return "Person ——>> talk()" ;
08 }
09 }
程序说明:
程序第 1 行声明一个 demo.java.a 的包,将 Person 类放入此包之中。
范例:TestPackage2.java
01 package demo.java.b ;
02 import demo.java.a.Person ;
03
04 class TestPackage2
05 {
06 public static void main(String[] args)
07 {
08 System.out.println(new Person().talk()) ;
09 }
10 }
输出结果:
Person —— >> talk()
程序说明:
1.程序第1行声明一个demo.java.b 包,将 TestPackage2 类放入此包之中。
2.程序第2行使用 import 语句,将demo.java.a 包中的 Person 类导入到此包之中。
3.程序第8行调用的是demo.java.b中Person类的talk()方法。
如果我们需要访问多个demo.java.a 包中的类,如果我们一条一条import就会觉得有点麻烦,此时我们可以使用import demo.java.a.*;(*代表所有类)把demo.java.a包中的所有类导入进来,这样我们开发的时候就会比较方便了。
以上便是今天的内容,大家可以试着练习一下。
谢谢大家!
----------
微价值网(公号vjiazhi),关注移动互联网以及App开发技术培训,提供有价值的干货文章。