Java 包和权限

/*
包: 
java中的包就相当于windows文件夹。
包的作用:
1. 解决类名重复产生冲突的问题。
2. 便于软件版本的发布。
定义包的格式:
package 包名;
包名命名规范:包名全部小写。
包语句要注意的事项:
1. package语句必须位于java文件中中第一个语句。
2. 如果一个类加上了包语句,那么该类的完整类名就是: 包名.类名
3. 一个java文件只能有一个包语句。
问题:  每次编译的时候都需要自己创建一个文件夹,把对应的class文件存储到文件夹中。烦!!!
javac -d 指定类文件的存放路径   java源文件
*/
package aa;
class Demo1 
{
public static void main(String[] args) 
{
System.out.println("这个是Demo1的main方法...");
}
}
package bb;
class Demo1
{
public static void main(String[] args) 
{
System.out.println("这个是Demo2main方法..");
}
}
/*
有了包之后类与类之间的访问:
问题: 有了包之后类与类之间的访问每次都必须要写上包名!烦!!!!
解决方案: sunc提供导包语句让我们解决该问题。
导包语句作用:简化书写。 (误区: 把一个类导入到内存中)
导包语句的格式:
 import 包名.类名;   (导入xxx包中某个类)
导包语句要注意的细节:
 1. 一个java文件中可以出现多句导包语句。
 2. "*"是 导包语句的通配符。可以匹配任何的类名。不能匹配包名
 3. import aa.*; 是不会作用于aa包下面的子包的。
推荐使用:import 包名.类名;   因为使用*通配符会导致结构不清晰。不知道哪个类属于哪个包的
什么时候使用import语句: 
1. 相互访问的两个类不是在同一个包下面,这时候就需要使用到导包语句。
2. java.lang 是默认导入的,不需要我们自己导入。
*/
package aa;
public class Demo3 
{
/*
static{
System.out.println("这个是Dmeo3的静态代码块...");
}
*/
public void print(){
System.out.println("这个是Dmeo3的print方法...");
}
}
package bb;
import aa.Demo3;
import java.util.Arrays; 
class Demo4 
{
public static void main(String[] args) 
{
int[] arr = {1,234,2};
Arrays.sort(arr);
Object o = new Object();
Demo3 d = new Demo3();
d.print();
/*
Demo5 d2 = new Demo5();
d2.test();
*/
}
}
package aa;
public class Demo5{
    static{
        System.out.println("这个是Dmeo5的静态代码块..."); //import包的时候并不会执行
    }
    public void test(){
        System.out.println("这个是Demo5的test方法...");
    }
}
/*
权限修饰符: 权限修饰符就是控制被修饰的成员的范围可见性。
               public(公共)   protected(受保护)      default(缺省)    private (大到小)
同一个类     true          true               true         true
同一个包     true          true               true         false  
子父类      true          true                     false        false
不同包      true          false              false        false

注意: 在不同包下面只有public 与 protected 可以访问,而且protected必须是在继承关系下才能够访问。
在同一个包下,只有private权限修饰的不能访问

*/
package aa;
public class Demo7 
{
protected   int i =10;
}
package bb;
import aa.Demo7;

class Demo8{
public static void main(String[] args){
    Demo7 d = new Demo7();
    System.out.println("i="+d.i);
}
}
时间: 2024-10-08 03:38:18

Java 包和权限的相关文章

java包及权限总结

/* 包:包就是java中的文件夹,一个文件夹就对应java中的一个包.包表现在具体的操作系统(如Windows)中,就是一个 文件夹.是用来存放类文件的即.class文件,也可以存放其他的子包,即包中有包. 在JAVA的世界中,没有什么源文件,核心的文件就是.class文件,即java运行文件.文件夹就是包.带压缩的文件夹 就是Jar包. 总的原则是: 1.一个java源文件(即.java文件)中可以定义多个类(即class),该源文件在编译的时候,每一个类都会形成一个 .class文件,包括

命令行的形式,了解java的包访问权限,与.java 文件的关系,通晓java文件储存的关系;

大家,在学习Java时,大多是使用eclipse 等IDE 环境, 然而这样并不好,而包访问权限,也是Java中框架结构控制的关键的步骤, 只有真正得掌握 .java文件与 package 间的关系,才能真正得掌握其中的关系,有利于写好框架: 少废话,先上代码: 这是带有 package com.xuyaowen.demo; 的文件,这是代表Jack.java文件所放在的位置: package com.xuyaowen.demo; public class Jack { Jack(){ Syst

Java 包(package)

为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间. 包的作用 1.把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用. 2.如同文件夹一样,包也采用了树形目录的存储方式.同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别.因此,包可以避免名字冲突. 3.包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类. Java 使用包(package)这种机制是为了防止命名冲突,访问控制,提供搜索和定位

Java 包(package)详解

为了更好地组织类,Java提供了包机制,用于区别类名的命名空间. 包的作用 1 把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用. 2 如同文件夹一样,包也采用了树形目录的存储方式.同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别.因此,包可以避免名字冲突. 3 包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类. Java使用包(package)这种机制是为了防止命名冲突,访问控制,提供搜索和定位类(

java:访问权限

访问权限四大类:权限从大->小 1.public:   公共权限 2.protected:  受保护权限 3.default: 包级别访问权限/默认权限 4.private:   私有权限 以public为例,使用方法如下: public class Test{ public int i; public void fun(){ } } public ->在同一个包或不同的包中的类可以自由访问. 可以修饰类.成员变量和成员函数 Test.java class Test { public stat

Java 訪问权限控制:你真的了解 protected keyword吗?

摘要: 在一个类的内部,其成员(包含成员变量和成员方法)是否能被其它类所訪问,取决于该成员的修饰词:而一个类是否能被其它类所訪问,取决于该类的修饰词.Java的类成员訪问权限修饰词有四类:private,无(默认情况下.包訪问权限),protected 和 public,而当中仅仅有包訪问权限和public才干修饰一个类(内部类除外).特别地,非常多的介绍Java的书籍对protected介绍的比較笼统,经常会对大家造成误解. 因此,本文重点揭示了 protected 关键字的内涵和使用方法,并

JAVA 基础 访问控制权限

包(package) package的作用 当编写一个JAVA源码文件时,此文件通常被称为编译单元.每个编译单元都必须有一个后缀名 .java . 而在编译单元中可以有一个 public 类,该类的名称必须和文件的名称相同.文件中允许有其他类,但是不能是public类. 当编译一个 .java 文件时,文件中的每个类都会有一个后缀为 .class 的输出文件,文件名和类名相同. Java可运行程序是一组可以打包压缩为一个Java文档文件(JAR,使用Java的jar文档生成器)的.class文件

JAVA 中的权限访问修饰符(public,protected,default,private )

JAVA中有四个权限访问修饰符:public,protected,default,private 注意:这里讲的是对类中属性和方法的访问权限,并不是类的访问权限 1.default:包访问权限 如果什么也没写,默认为default.当然也可以显式得给出default权限 default修饰的属性和方法,包中的所有其他类对那个成员都有访问权限,但是对于这个包之外的所有类没有访问权限. 2.public: 接口访问权限 public修饰的属性和方法对每个类都是可见的 3.private:类内访问权限

Java包(package)(二)

为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间. 一个包(package)可以定义为一组相互联系的类型(类.接口.枚举和注释) 使用包这种机制,更容易实现访问控制,并且让定位相关类更加简单. package(包) 的作用是把不同的 java 程序分类保存,更方便的被其他 java 程序调用. 当你自己完成类的实现之后,将相关的类分组,可以让其他的编程者更容易地确定哪些类.接口.枚举和注释等是相关的. 包的作用 1.把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用.