[04] 包和访问权限修饰符

1、包

在某个类中的最上方,我们总是可以看到以 package 关键字开头的一行代码,这行代码表示了当前类的位置,我们称之为包。

  1. package com.learn.pay.service;

包实际上是:

  • 物理上是文件夹
  • 逻辑上是有相互关系的类的集合

物理上是文件夹,是说假如你的包名是 “com.learn.java.Person”,那么实际上Person这个java文件在项目文件夹下的 “com / learn / java /” 文件夹中。

而逻辑上相关联的类的集合,这个并不是强制性的,而是一种约定俗成,比如把支付相关功能的类放在一个包下,消息发送功能的类放在另一个包下,便于归类和使用。就像你家中各类衣物小到袜子大到铺盖卷儿如果全部揉了丢一块,等你想用的时候去找,就发现麻烦大了。

那么包的主要作用是:

  • 避免类重名
  • 控制访问权限

就和我们使用windows时,在某个文件夹内不能出现两个同名文件类似,不同的包也可以防止类名的重复,也就便于不同程序员之间工作,即便出现同名类也不影响。如果我需要引用的那个类和我包中的类重名怎么办?答案是带上包名,使用类似 “com.learn.java.Person” 来表示一个Person。

而当我们在某个类中要使用到其他位置的类时,我们需要使用 import 关键字进行引用,而引用不是随意的,就像你可以选择你自己是否去公园,能不能进去就是另一回事了(比如没到开放时间,或者发生自然事故等等)。

你要引用其他类,能否成功引用关键在于引用类的是否给你权限,也就是所谓的权限修饰符来控制(默认类是public权限,即没有限制随便引用)。

2、访问权限修饰符

我们在类,以及方法的定义时,都会使用到权限访问修饰符,对类来说,只有两种,对属性和方法来说,有四种:

权限访问修饰符 定义 权限 针对范围
public     公共权限     可以被任意类访问 属性、方法、类
protected     受保护的权限 同包类可以访问,或者非同包的该类子类可访问 属性、方法
default(即默认不写) 同包权限 只能被同包的类访问 属性、方法、类
private     私有权限     只能在本类中访问使用     属性、方法
  • 类:public、default
  • 属性、方法:public、protected、default、private

权限修饰符的使用位置为:

  1. //对类来说
  2. 【访问权限修饰符】【修饰符】class 类名 {
  3. 类体
  4. }
  5. //对属性来说
  6. 【访问权限修饰符】【修饰符】数据类型 属性名【=初值】;
  7. //对方法来说
  8. 【访问权限修饰符】【修饰符】返回值数据类型 方法名(形式参数列表) {
  9. 执行语句;
  10. return 返回值;
  11. }
时间: 2024-08-02 04:33:12

[04] 包和访问权限修饰符的相关文章

访问权限修饰符-static-final-this-super-匿名对象

1.this关键字的作用     1)调用本类中的属性;     2)调用本类中的构造方法;且只能放首行,且必须留一个构造方法作为出口,即不能递归调用     3)表示当前对象; 2.匿名对象     直接new出来的对象,不创建变量名,且只能使用一次,通常作为方法的参数及返回值使用 3.继承     关键字:extends     通过继承,子类可以直接访问父类中非私有的属性及方法     只允许单继承,但是可以多层继承     子类对象的实例化过程是先调用父类的构造器,再调用子类的构造器; 

Java简单语法与访问权限修饰符

Java简单语法总结 一:Java简单语法概述 1:分号,关键字,空白(空格,空白行),花括号和注释的使用. 2:标识符的规则(命名规则与业内约定). 3:Java表达式(逗号,问号和逻辑表达式). 二:分号,关键字,空白(空格,空白行),花括号和注释的使用 1:分号  在Java中通常用来分隔语句,即作为分隔符,另外它也是一个语句结束的标志. 2:关键字 通俗的理解,在编译器Eclipse中像"public","class"这些输入的时候就带有颜色的字成为关键字,

七、访问权限修饰符

作用:决定了被修饰的类,方法,以及全局变量能被访问的范围 1.访问权限修饰符一共有四个,按权限大小排序:public>protected>default>private 2.default a.比较特殊,如果没有添加任何的访问权限修饰符,则就是default权限 b.是隐式的,不能写出来 3.修饰普通类 只能使用public和default[能修饰类的访问权限修饰符只有public和default,错误的] 访问权限修饰符 同包 不同包 public 可以 可以 default 可以 不

Java 访问权限修饰符以及protected修饰符的理解

2017-11-04 22:28:39 访问权限修饰符的权限 访问修饰符protected的权限理解 在Core Java中有这样一段话"在Object类中,clone方法被声明为protected,因此无法直接调用anObject.clone().子类只能直接调用受保护的clone方法克隆它自己.为此,必须重新定义clone方法,并将它声明为public,这样才能让所有的方法克隆对象".但是不是所有的子类都可以访问受保护的方法吗?不是每个子类都是Object的之类吗?下面就用例子来说

java中访问权限修饰符

java中的访问权限修饰符共有四种,分别为private.default.protected.public,它们的访问权限依次升高,private只能被本类所调用,default(不写的话默认为default)可以被同一个包下的所有类所调用,protected既可以被同一个包下的所有类所调用,也能被不同包下的子类所调用(即必须要有继承关系),而public则为公开的,项目下所有包的所有类都可进行调用. 代码测试如下: , 经测试结果如下: 除private类报错外,其余各访问权限修饰词均在本包其

java四种访问权限修饰符

java中四个访问权限修饰符: public(公开的).protected(受保护的).default(默认的).private(私有的). 它们决定了紧跟其后被定义的东西的使用范围. 适用范围<访问权限范围越小,安全性越高>  访问权限   类   包  子类  其他包   public     ∨   ∨    ∨     ∨          (对任何人都是可用的)  protect    ∨   ∨   ∨     × (同一个包内其他类和继承的类可以访问)  default    ∨

Java 访问权限修饰符 与 非访问权限修饰符

分类 Java语言提供了很多修饰符,大概分为两类: 1. 访问权限修饰符 2. 非访问权限修饰符 访问权限修饰符 public:共有访问.对所有的类都可见. protected:保护型访问.对同一个包可见,对不同的包的子类可见. default:默认访问权限.只对同一个包可见,注意对不同的包的子类不可见. private:私有访问.只对同一个类可见,其余都不见. 非访问权限修饰符 static 修饰符,用来创建类方法和类变量. final 修饰符,用来修饰类.方法和变量,final 修饰的类不能

Java访问权限修饰符Java Access Modifiers

 访问权限的修饰符一共有四种: private,默认(default),protected,public  能修饰类.方法和属性上的修饰符有哪些呢     访问权限修饰符对方法和属性的控制范围 通常情况下类一般设置为public,属性一般设置为private,方法一般设置为public (也有少数使用protected,private) 原文地址:https://www.cnblogs.com/seviyan/p/11616846.html

Java类和类成员的访问权限修饰符

一:访问修饰符: 1.省略访问修饰符 具有默认的访问特性,即具有包访问特性,只能被同一个包中的类使用. 2.public访问修饰符 用于说明类和类的成员的访问权限.这种类叫公有类.在一个文件中只能有一个public类型的类. 例如:Rect和UseImport两个类,分别在两个不同的包中.顺便回顾一下不同类要用import导入.(哎,一直就没记住) //Rect.java pacakage my; public class Rect { private int a,b; public void