2017-11-02 22:58:45

包(package):其实就是文件夹。

包的作用是对类进行分类的管理,并且区分不同的类名。

举例:

  学生:增加,删除,修改,查询

  教师:增加,删除,修改,查询

  ...

  方案一:按功能分类

      com.add

        AddStudent

        AddTeacher

      com.delete

        DeleteStudent

        DeleteTeacher

      com.update

        UpdateStudent

        UpdateTeacher

      com.find

        FindStudent

        FindTeacher

  方案二:按模块分类

      com.Student

        AddStudent

        DeleteStudent

        UpdateStudent

        FindStudent

        

      com.Teacher

        AddTeacher

        DeleteTeacher

        UpdateTeacher

        FindTeacher

注意事项:必须是第一条代码;一个java文件只能有一句;如果没有package,默认无包名。

带包的编译和运行:A:手动式

              a:编写一个带包的java文件

              b:通过javac进行编译该文件

              c:手动创建包名,并将生成的.class文件放到文件夹中

              d:回到java文件的文件夹,带包名编译

         B:自动式

              a:编写一个带包的java文件

              b:通过javac进行编译该文件,加上 -d . 即可 (-d参数的作用是指定生成java包的根目录,"."表示当前目录下创建包)

不同包下的类之间的访问:

1、不同包下首先需要加上包名限定

2、必须要先把需要的包的字节码文件编译出来

3、不同包下的权限问题

package com.cnblogs

public Class Test
{
public static void main()
{
//不同包下需要加包名
//Demo demo = new Demo();
com.edit.Demo demo = new Demo();
System.out.println(demo.sum);
}
}

导包功能:不同包下的类之间的访问,每次需要使用不同的包下的类的时候,都需要加上包的全路径。比较麻烦。这时候,Java就提供了导包功能。也就是import命令。

格式:import 包名;

需要的java类,要么拷到当前目录,要么拷到classpath中设置的目录,比如说c:\java\jdk\lib(前提是你要在classpath中设置这个目录)

import只能用于同级目录或下级目录的情况,比如你的程序放在d盘,而你要导入abc目录中的类,那么在程序开头写 import abc.*;
假如你要导入abc目录下的efd目录下的类,那么写 import abc.efd.*;
以此类推

另外, import 只能导入.class文件,不能导入.java文件

注意:这种方式是导入到类的名称;

          虽然可以最后写.*,不过不推荐使用这种方式;

不同包之间的权限问题:不同包之间的类的访问的修饰符只能是public和protected。

注意:不同包下子类是无法访问父类的protected修饰的成员的。

        

Java 包的概述和讲解的更多相关文章

  1. 10-03 Java 包的概述和讲解

    带包的编译和运行 A:手动式 a:编写一个带包的java文件. b:通过javac命令编译该java文件. c:手动创建包名. d:把b步骤的class文件放到c步骤的最底层包 e:回到和包根目录在同 ...

  2. Java包的基本概述

    第七章 7.1 包的基本概述 起因: 在我们设计一个程序的时候(尤其是多人合作),会写一些类来实现功能,但是往往会有重名的现象发生,为了解决这个问题,则专门设计了包.(还有其他作用,下述) 简单理解: ...

  3. Notes 20180506 : Java程序设计语言概述

    2.Java程序设计语言概述 如果对于开发语言的排行榜有所关注的话,那么会发现很长一段时间以来Java都是位居榜首的高级开发语言,作为一个Java开发者,为此感到骄傲的同时也深感忧虑,骄傲的是自己接触 ...

  4. Java类加载器概述

    Java类加载器概述 Java 中的类加载器大致可以分成两类,一类是系统提供的,另外一类则是由Java 应用开发人员编写的. 系统提供的类加载器 引导类加载器 它用来加载 Java 的核心库,是用原生 ...

  5. Java Reference简要概述

    @(Java)[Reference] Java Reference简要概述 Reference对象封装了其它对象的引用,可以和普通的对象一样操作. Java提供了四种不同类型的引用,引用级别从高到低分 ...

  6. Python 包的相对导入讲解

    [Python 包的相对导入讲解] 参考:http://www.dai3.com/python-import.html

  7. Android 虚拟机Dalvik、Android各种java包功能、Android相关文件类型、应用程序结构分析、ADB

    Android虚拟机Dalvik Dalvik冲击 随着Google 的AndroidSDK 的发布,关于它的API 以及在移动电话领域所带来的预期影响这些方面的讨论不胜枚举.不过,其中的一个话题在J ...

  8. 在Eclipse工具里创建maven的web工程,在建立src/main/java包出现The folder is already a source folder.解决

    1. 与创建普通java工程一样,点击右键找到New菜单,在弹出的界面输入maven ---->>点击maven Project------>>点击next 2  进入下一个界 ...

  9. android工程gen目录中R.java包名是怎么确定

    新建一个工程,包名用的com.mythroad.adskiller, 后来觉得不好,又改成com.mythroad.adsinscepter,但是我发现gen下的R.java文件的包名还是原来的com ...

随机推荐

  1. Javascript-逻辑运算符非(!)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. java后台获取和js拼接展示信息

    java后台获取和js拼接展示信息: html页面代码: <div class="results-bd"> <table id="activityInf ...

  3. sql的函数和存储过程的区别

    本文部分内容转自http://www.cnblogs.com/lengbingshy/archive/2010/02/25/1673476.html 本质上没区别.只是函数有如:只能返回一个变量的限制 ...

  4. Tomcat上发布webservices的war工程,访问异常404

    Tomcat上发布webservices的war工程,访问异常404 Tomcat部署正常.war导出工程正常.Tomcat自带的工程可以正常访问: 问题: webservices工程访问异常404 ...

  5. jdk自带的ThreadLocal和netty扩展的FastThreadLocal比较总结

    最近在分析一潜在内存泄露问题的时候,jmap出来中有很多的FastThreadLocalThread实例,看了下javadoc,如下: A special variant of ThreadLocal ...

  6. 02: Redis缓存系统

    目录: 1.1 在centos6.5中安装Redis 1.2 Redis的简介及两种基本操作 1.3 Redis对string操作(第一类) 1.4 redis对Hash操作,字典格式(第二类) 1. ...

  7. 20145205武钰《网络对抗》web安全基础实践

    实验后问题回答 (1)SQL注入攻击原理,如何防御 攻击原理:SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意SQL命令的目的 防御手 ...

  8. 20145339 Exp5 MS11_050

    20145339 Exp5 MS11_050 实验过程 使用命令msfconsole命令进入控制台 使用命令search ms11_050查看针对MS11_050漏洞的攻击模块 确定相应模块名之后,我 ...

  9. mac OSX 实用快捷键

    Command + shift + G. 前往文件夹 按键 效果 Shift + option + 音量+/- 以四分之一的刻度加 / 减音量 Shift. + option + 9 ······

  10. CSS3实现小黄人动画

    转载请注明出处,谢谢! 每次看到CSS3动画就心痒痒想试一下,记得一个多月前看了白树哥哥的一篇博客,突然开窍,于是拿他提供的demo试了一下,感觉很棒!下图为demo提供的动画帧设计稿. 自己也想说搞 ...