Day_7访问权限

来源:互联网 发布:北上广不相信眼泪 知乎 编辑:程序博客网 时间:2024/06/04 21:18

Day_7访问权限

1、包:(类似文件夹)进行分类管理,避免名字命名冲突

package 包名.子包名..

建议包名采用“域名的倒写.项目名.模块名”的形式,以确保包名的唯一性,例如:com.bnis.business.action。

 

在Java程序中,不能直接访问包外的类,需要访问包外的类时,可用两种方式:

u 使用类的全限定名(包含包名),如:

ch3.src.TestPackage test =new ch3.src.TestPackage( );

uimport关键字引入包,然后使用。

        import some.TestPackage;

        TestPackage test = new TestPackage();

说明:package需要在import前使用,import需要在类声明前使用。

编译:有包之后,javac  –d . 类名.java  指定class放在那里 .当前目录,-d生成指定的包结构

运行:有包之后,java 包名.类名

package 随便;

 

//使用import导入相关类,然后就可以直接使用

//import day7.PackageTest;//放置在package后面,类声明的前面,可以导入多个类

//可以使用*导入包中所有类,不包括子包中的类

 

//String :隐含导入import java.lang.*;用的比较多,所以虚拟机自动导入

 

//明确导入,会遮蔽*按需导入的同名类

//import day7.PackageTest---遮蔽---/import day7.*

public classApple {

   public static void main(String[] args){

   // PackageTest p=newPackageTest();//不能直接使用另一个包里面的类

     

      //包名.类名---使用类的全限定名,可以使用另一个包里的类

      day7.PackageTesta=new day7.PackageTest();

     

      //PackageTest p=new PackageTest();//导入了包可以直接使用

   }

}

 

2、访问权限

封装:保证底层随意修改,不影响前台操作,便于以后维护。

隐藏信息:

Public             公有,都可以使用

Protected      保护,包内可以使用,包外子类可以使用

默认不加         只对包内开放

Private          私有,只有类可以使用

类只有两种访问方式:public和默认访问权限()

 

3、static

修饰内部类,方法,成员变量

区别:静态成员变量,实例成员变量

从个数上来讲, //静态成员变量只有一个,归类所有,而实例变量是,

   //每创建一个对象,都会单独分配空间,每个对象都有自己的实例变量

 

从访问方式来讲://静态成员可以通过类名访问,也可以通过对象的引用来访问,//实例变量只能通过对象引用

从初始化时机来说:静态成员初始化比实例变量早,随类初始化

Final

 

//避免魔幻数字的产生,增加程序的可读性

//便于程序的修改,增加可维护性

 

public classFinal2 {

   final int weight=10;

   final int length=5;

        

   public int getC(){

      return (weight+length)*2;

   }

   public int getM(){

      return weight*length;

   }

}

4、封装:

隐藏底层的实现细节,只要提供的公有方法不变,客户端就无需改变。

 

0 0