只接受发布货源信息,不可发布违法信息,一旦发现永久封号,欢迎向我们举报!
1064879863
16货源网 > 餐饮行业新闻资讯 > 网站建设资讯大全 >  《Java面向对象编程11》-软件开发第28篇


《Java面向对象编程11》-软件开发第28篇

发布时间:2019-10-12 06:13:49  来源:网友自行发布(如侵权请联系本站立刻删除)  浏览:   【】【】【
hi,各位同学好久不见!今天我们继续Java编程中关于对象的部分内容。【前文回顾】前面两节课我们主要介绍了在Java中最为基础的对象构造中的一些基本内容。主要包括:对象构造中的方法重载、默认域初始化和
《Java面向对象编程11》-软件开发第28篇

hi,各位同学好久不见!今天我们继续Java编程中关于对象的部分内容。


【前文回顾】


前面两节课我们主要介绍了在Java中最为基础的对象构造中的一些基本内容。主要包括:对象构造中的方法重载、默认域初始化和默认构造器、显式域初始化、参数名、调用另一个构造器、初始化块、对象析构与finalize方法。


【本次讲堂】


这节课我们主要介绍类的组织结构中的一个基本概念“包”。


什么是包

Java允许使用包(package)将类组织起来。借助于包可以方便地组织自己的代码,并将自己的代码与别人提供的代码库分开管理。

标准的Java类库分布在多个包中,包括java.lang,java.util和 java.net等。标准的Java包具有一个层次结构,如同硬盘的目录嵌套一样,也可以使用嵌套层次组织包,所有标准的Java包都处于java和javax包层次中。


使用包的主要原因是确保类名的唯一性。假如两个程序员不约而同地建立了Employee类,只要将这些类放置在不同的包中就不会产生冲突。事实上,为了保证包名的绝对唯一性,Sun公司建议将公司的因特网域名(这显然是独一无二的)以逆序的形式作为包名,并且对于不同的项目使用不同的子包。例如apache.org是apache的域名,基本上apache的很多项目都是org.apache开头的。

从编译器的角度看,嵌套的包之间没有任何联系。例如,java.util包与java.util.jar包毫无关系。每一个都拥有独立的类集合。


下面我们从以下几个方便详细说说关于包的那些事。

类的导入

一个类可以使用所属包中所有的类,以及其他包中的公有类(public class)。我们可以采用两种方式访问另一个包中的公有类。

  • 使用时在每个类名前添加完整的包名,不推荐

例子:

java.util.Date today = new java.util.Date();
  • 使用import语句。这种用法在使用类时就不必写出包的全名了。是常见用法。import语句应该位于源文件顶部(但位于package语句的后面)

例子:

import java.util.*...Date today = new Date();


需要注意的是只能用*号导入一个包,而不能使用import java.*导入以java为前缀的包。大部分情况下,只要导入所需包即可,但是个别情况下,发生了类名冲突的时候,要注意包名。比如java.util和java.sql都有日期类。

import java.util.*;import java.sql.*;....Date today;//error


如果上述情况使用Date类出错的原因就是编译器无法确定使用那一个Date类。可以通过java.util.Date;或者 java.util.Date today = new java.util.Date();的方式来解决。


静态导入

从Java SE5.0开始,import语句不仅可以导入类,还增加了导入静态方法和静态域的功能。通常会在以下两种实际应用上使用,会使代码看起来更清晰。

  • 算术函数。对Math类使用静态导入,可以用更自然的方式使用算术函数。比如下面语句对比:

sqrt(pow(x,2)+pow(y,2))Math.sqrt(Math.pow(x,2)+Math.pow(y,2))


  • 笨重的变量。用静态导入避免使用大量带有冗长名字的常量。

if(d.get(DAY_OF_WEEK)==MONDAY) if(d.get(Calendar.DAY_OF_WEEK)==Calendar.MONDAY)


将类放入包中

要想将一个类放入包中,就必须将包的名字放在源文件的开头,包中定义类的代码之前。

package com.test;public class Employee{...}


如果没有在源文件中放置package语句,这个源文件中的类就放置在一个默认包(default package)中。默认包是一个没有名字的包。

将包中的文件放到与完整的包名匹配的子目录中。


包作用域

前面已经接触过访问修饰符public和private,标记为public的部分可以被任意的类使用;标记为private的部分只能被定义他们的类使用。如果没有指定public或者private,这个部分(类、方法或变量)可以被同一个包中的所有方法访问。


类路径

类存储在文件系统的子目录中。类路径必须与包名匹配。此外,类文件也可以放在Jar文件中。

为了使类能够被多个程序共享,需要做到以下几点:

  1. 将类放到一个目录中。

  2. 将jar文件放在一个目录中。

  3. 设置类路径(class path)。类路径是所有包含类文件的路径的集合。在unix环境中,类路径中的不同项目之间采用冒号(:)分隔,而在windows环境中,则以分号(;)分隔。句点(.)表示当前目录。

类路径所列出的目录和归档文件是搜寻类的起始点。


设置类路径

最好采用-classpath(或-cp)选项指定类路径

也可以通过设置CLASSPATH环境变量完成这个操作。其详细情况依赖于所使用的shell。


好了,今天的内容就这么多,希望大家好好学习。我是cc,下次课不见不散。


关注公众号,回复“加入觅识帮”,识别群二维码,期待你的加入。

让我们共同相伴,开启软件知识之旅。


关注我们

责任编辑:觅识堂软件开发和测试
热门阅读排行
© 16货源网 1064879863