java学习笔记----java基础07:包和访问控制

1.包

(1)包是类的容器,用于分隔类名空间。如果没有指定包名,所有的类都属于一个默认的无名包。包的命名通常全部用小字母。

Java 包机制的主要作用:                                            

  • 提供类似于树形文件夹的组织形式,能分门别类地存储、管理类,利于查找并使用类。
  • 解决了同名类的命名冲突。同名的类不能放在同一个包中,同名的类放在不同的包中,不会起冲突。
  • 包允许在更广的范围内保护类、属性和方法。包的命名通常全部用小字母。

(2)JDK类库中不同包的主要功能:

  •  java.lang:用java语言编程的基础类。java.lang包中的所有公共类,系统都默认导入到程序中,不需要程序员显式地导入。
  • java.util:java工具类,包含了对集合、数组的操作、事件模型、日期和时间设置、国际化和各种实用工具。
  • java.io:通过数据流、序列化和文件系统提供系统输入输出。
  • java.net:为实现网络应用程序而提供的类。
  • java.awt:包含用于创建用户界面和绘制图形图像的类。 

(3)java包中的两个随机函数

    这两个随机函数分别是:java.lang.Math.random();和 java.util.Random();

  • java.lang.Math.random();的方法类型是  public static double random();是一个无参的方法,返回值是double类型的公开静态方法。 返回值大于等于0.0,小于1.0。若要返回别的类型,需要强制转换。例如:int类型:(int)Math.random();    float类型:(float)Math.random();  现在随机返回0.0到10.0(不包括10.0)之间 的数 :double number = Math.random()*10;                      float number =(float) Math.random()*10;  int number = (int)Math.random()*10; 另外int类型不需要强制类型转换也可以,用Math.round(Math.random());   Math.round(浮点型参数);是四舍五入,返回值是int类型 ; Math.ceil(浮点型参数);向上取整,返回值double类型 ; Math.floor(浮点参数);向下取整,返回值double类型。
  • java.util.Random中的Random();函数 可以构造无参函数,也可以构造有参函数。Random不能像Math.random();那样直接用类名调用,Random();需要通过创建实例对象去调用。创建对象时都是用 Random(),不需要参数:                                    Random r = new Random();  无参的为 int number = r.nextInt();返回的是随机的int类型的数值。                                           有参的为 int number = r.nextInt(int类型参数)返回的是0到参数之间的int类型的数值(包含0不包含参数)。其余还有很多中类型,例如:.nextFloat()、 .nextDouble()、.nextBoolean()  ;注意:有参数的和next后的类型相同。

2.访问权限

java语言中的访问权限修饰为:public 、protected 、private、default;因为不写访问权限修饰符时,在java中被默认为默认权限又称为包权限(包权限,在同一个包中可以访问)。跟c语言不同,c的话,不写就默认为public。类能使用的访问权限修饰符只有public和default。类成员可以4个都可以用。

3.static关键字

  •  声明为static 的变量称为静态变量或类变量。可以直接通过类名引用静态变量,也可以通过实例名引用静态变量,但最好用前者,不然容易混淆静态变量和实例变量。类的静态变量,类的所有实例共同拥有。静态方法不属于任何一个实例。
  • 静态方法不能调用实例变量:因为静态方法无法从静态的上下文中引用非静态变量。

 

 

 

发布了15 篇原创文章 · 获赞 10 · 访问量 2227
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章