首页 / JAVA / Java中的包与访问权限的控制
Java中的包与访问权限的控制
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java中的包与访问权限的控制,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5236字,纯文字阅读大概需要8分钟。
内容图文
![Java中的包与访问权限的控制](/upload/InfoBanner/zyjiaocheng/1177/a0c1511d2b7a499da4e09d9df0d815ef.jpg)
多人开发
![技术分享](/upload/getfiles/default/2022/11/26/20221126112408492.jpg)
包的概念
package org.lxh.demo08.demo ; public class Hello{ public String getInfo(){ return "Hello World!!!" ; } };定义包之后,实际上类的名称就是:包.类名称
package org.lxh.demo08 ; // 定义一个包 class Demo{ public String getInfo(){ return "Hello World!!!" ; } }; public class PackageDemo01{ public static void main(String args[]){ System.out.println(new Demo().getInfo()); } };程序编译:javac -d . packageDemo01.java
![技术分享](/upload/getfiles/default/2022/11/26/20221126112408856.jpg)
包的导入:
![技术分享](/upload/getfiles/default/2022/11/26/20221126112409013.jpg)
Demo.java
package org.lxh.demo08.a ; class Demo{ //默认是default权限,是不能被外包的类所访问的 public String getContent(){ return "lx XXX" ; } };ImportDemo01.java
package org.lxh.demo08.b ; // 放在不同的包中 import org.lxh.demo08.a.* ; // 导入不同包中的Demo类 public class ImportDemo01{ public static void main(String args[]){ System.out.println(new Demo().getInfo()) ; } };如果使用DOS命令,应该先编译Demo.java类,之后再编译ImportDemo01.java,因为后者使用了前者的类进行操作。 发现编译时出现了错误,是因为Demo类没有加权限是默认的default权限,default权限的类是无法被不在同一包中的类所访问的。加上public才可以被外面的类所访问。
package org.lxh.demo08.b ; // 放在不同的包中 import org.lxh.demo08.a.* ; // 导入不同包中的Demo类 public class ImportDemo01{ public static void main(String args[]){ System.out.println(new Demo().getInfo()) ; } };问题:
![技术分享](/upload/getfiles/default/2022/11/26/20221126112409295.jpg)
package org.lxh.demo08.d ; import org.lxh.demo08.a.* ; // 包中存在Demo类 import org.lxh.demo08.c.* ; // 包中存在Demo类 public class ImportDemo02{ public static void main(String args[]){ Demo d = new Demo() ; System.out.println(d.getInfo()) ; } };
现在定义一个类导入两个包,两个包中都有一个Demo类,此时声明Demo对象的时候就会出现错误,是因为JVM无法区分调用的到底是哪个包中的类。所以如果出现这种情况的时候最好写入完整的“包.类名称”。修改代码如下所示即可。
package org.lxh.demo08.d ; import org.lxh.demo08.a.* ; // 包中存在Demo类 import org.lxh.demo08.c.* ; // 包中存在Demo类 public class ImportDemo02{ public static void main(String args[]){ org.lxh.demo08.a.Demo d = new org.lxh.demo08.a.Demo() ; System.out.println(d.getInfo()) ; } };
![技术分享](/upload/getfiles/default/2022/11/26/20221126112409427.jpg)
java.util.Arrays.sort()
package org.lxh.demo08.e ; public class Operate{ // 里面的方法全部都是static类型 public static int add(int i,int j) { // 加法操作 return i + j ; } public static int sub(int i,int j) { // 减法操作 return i - j ; } public static int mul(int i,int j) { // 乘法操作 return i * j ; } public static int div(int i,int j) { // 除法操作 return i / j ; } };如果按照之前的import导入的话,则调用的时候肯定使用的是“类.方法()”
package org.lxh.demo08.f ; import static org.lxh.demo08.e.Operate.* ; // 静态导入 public class StaticImportDemo{ public static void main(String args[]){ System.out.println("3 + 3 = " + add(3,3)) ; // 直接调用静态方法 System.out.println("3 - 2 = " + sub(3,2)) ; // 直接调用静态方法 System.out.println("3 * 3 = " + mul(3,3)) ; // 直接调用静态方法 System.out.println("3 / 3 = " + div(3,3)) ; // 直接调用静态方法 } };
静态导入后直接可以调用静态方法即可。
![技术分享](/upload/getfiles/default/2022/11/26/20221126112410182.jpg)
直接输入jar即可:
![技术分享](/upload/getfiles/default/2022/11/26/20221126112410627.jpg)
package org.lxh.demo08.demo ; public class Hello{ public String getInfo(){ return "Hello World!!!" ; } };将其打包编译:javac -d . Hello.java
![技术分享](/upload/getfiles/default/2022/11/26/20221126112410937.jpg)
表示将文件夹org 就是总文件夹 打包成my.jar
访问控制权限及命名规范。
![技术分享](/upload/getfiles/default/2022/11/26/20221126112411117.jpg)
原文:http://blog.csdn.net/u013087513/article/details/51169550
内容总结
以上是互联网集市为您收集整理的Java中的包与访问权限的控制全部内容,希望文章能够帮你解决Java中的包与访问权限的控制所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。