博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
黑马程序员-包
阅读量:6688 次
发布时间:2019-06-25

本文共 1107 字,大约阅读时间需要 3 分钟。

/*

对类文件进行分类管理,给类提供多层命名空间,包也是一种封装形式。

指定当前目录的方式;生成包类的方法(java -d . 文件保存的名称(是吗).java),

不指定当前目录的方式;javac -d  c:\myclass day1001.java 运行;java pac.packagedemo

总结:

       1.包与包之间的访问,被访问的包中的类以及类中的成员都必须是public修饰。

        A包中类可以继承B包中的类,可以直接调用B包中的类的方法,并且new对象。

       2.不同包中的子类还可以直接访问父类中被protected权限修饰的成员。

       protected 的属性和方法可以在本包和子类访问

 

protected:保护权限,修饰成员。

1. protected 访问控制符能被用于方法和成员变量。

    2. 声明为protected的方法和成员变量能被同一个包里的所有类所访问,就像默认修饰符package一样。

    3. 能被该类的子类所访问,子类可以和父类不在一个包中。                         

包与包的权限: public protected default  private

同一个类中    :  ok         ok        ok              ok     

同一个包中    :    ok         ok        ok                    

子类              :    ok         ok       

不同包中       :  ok

多层包目录 package pack.haha.hehe.heieh

*import导入;为了简化类名的书写,关键字

import packb.hh.jhe.ee

import packb.hh.jhe.ee.*

import 导入的是包中的类。注意是类.不是子包

d:\haha\heihei\demo.class  import d:\haha,这时没有导入demo.class,导入的只是haha目录下的类。

建议不要用通配符*(*前的目录下的类全部导入),用哪个久=就导入哪个

建议定义包名不要重复

d:\haha\heihei,如果haha和heihei中各有一个democ.class,这时建立democ的对象时,

必须要写上包名。

静态导入:

import Static

普通的import导入的是:包中的一个或者所有的类。

静态import导入的是:包中的一个所有的静态方法。

静态导入可以省去类名

        不是所有的方法都可以省去类名,想toString()  Array.toString(T[] t)就不能省,因为toString()是 从Object中继承的,为了避免导入的两个包中有同名的方法。所以要标记类名。

        *

转载于:https://www.cnblogs.com/heimaprogramer/p/3773010.html

你可能感兴趣的文章
c:\Windows\System32\drivers\etc\hosts的作用
查看>>
2.Xml与多个对象的映射(聚合或组合)及注意事项
查看>>
java报表开发之报表总述
查看>>
正确释放Vector的内存
查看>>
【零基础学习iOS开发】【02-C语言】04-常量、变量
查看>>
最小堆的基础操作(Java)
查看>>
bzoj2039: [2009国家集训队]employ人员雇佣(最小割)
查看>>
AspNetCore Mvc 使用 PartialView
查看>>
bzoj1227: [SDOI2009]虔诚的墓主人(树状数组,组合数)
查看>>
Sql Server 网络配置
查看>>
Oracle案例11——Oracle表空间数据库文件收缩
查看>>
看博客学学Android(十四)
查看>>
在Windows下安装配置jforum测试环境
查看>>
WEB基础
查看>>
AtCoder Regular Contest 081
查看>>
树状数组模板
查看>>
2017"百度之星"程序设计大赛 - 初赛(A)
查看>>
Python3 输出
查看>>
实验四 shell编程2
查看>>
多线程的那点儿事(基础篇)
查看>>