「java通用权限」Java开发企业级权限管理

博主:adminadmin 2022-12-10 18:39:06 50

本篇文章给大家谈谈java通用权限,以及Java开发企业级权限管理对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java访问控制权限有哪些

java中成员的访问权限共有四种,其中三种有访问权限修饰词:public,protected,private。

Public:权限最大,允许所有类访问,但其他包下的类想要访问需使用import关键字将这些public类导入包中才可使用,换句话说,import将不同包的类导入到一个包下,从而转化为包访问权限下的情况。

Protected:除了提供包访问权限以外,还对继承该类的所有派生类赋予访问权限。

Private:权限最小,只能由包含该成员(域和方法)的类本身访问,其他任何类都无法访问。

不使用这三个关键词时,则提供默认包访问权限,该权限只允许同一个包下(即同一个目录下的Java文件)的类访问该类。

注意:private和protected只能修饰成员,无法修饰类。类要么是public的,要么是包访问权限。

「java通用权限」Java开发企业级权限管理

Java中目前学习涉及到的四种权限修饰符都有什么?并说明各自的权限范围

(1)public : 公共权限

修饰对象: 修饰类、方法、属性

继承:       被public所修饰的成员能被该类的所有子类继承下来。

作用域:    可以被任意类访问

public能用来修饰类,在一个java源文件中只能有一个类被声明为public,而且一旦有一个类为public,那这个java源文件的文件名就必须要和这个被public所修饰的类的类名相同,否则编译不能通过。说到这里,穿插多一点知识。一个类作为外部类的时候只能被public或者默认访问修饰符所修饰,但是一个类如果作为内部类的时候,则可以被四种访问修饰符所修饰,因为一个类作为内部类的时候,就作为外部类的一个成员属性了,因此可以有四种访问修饰符修饰,这是内部类和外部类的一个区别。

public用来修饰类中成员(变量和方法),被public所修饰的成员可以在任何类中都能被访问到。通过操作该类的对象能随意访问public成员。

public在类的继承上的体现,被public所修饰的成员能被所有的子类继承下来。

(2)protected:受保护的权限

修饰对象:修饰内部类,接口,属性,方法

继承:       被protected所修饰的成员能被该类的所有子类继承下来。

作用域:    可以被同包类访问,如果不是同包,必须是该类的子类才能访问

(3)default : 同包权限(默认,缺省的)

修饰对象:修饰类,属性,方法。

继承:被default所修饰的成员只能被该类所在同一个package中的子类所继承下来。(也就是说只有在同一个package中的子类才能访问到父类中default修饰的成员)

作用域:    只能被同包的类访问

(4) private : 私有权限

修饰对象 : 内部类,属性,方法

作用域:     只能在本类中使用

注意:

(1)protected不能修饰类。

(2)priavte可以修饰类,但是该类必须是一个内部类。

在定义类时,推荐访问控制级别从严处理:

(1) 如果不允许外部直接通过 new 创建对象,构造方法必须是 private。

(2)工具类不允许有 public 或 default 构造方法。

(3)类非 static 成员变量并且与子类共享,必须是 protected。

(4)类非static成员变量并且仅在本类使用,必须是private。

(5)类 static 成员变量如果仅在本类使用,必须是 private。

(6)若是 static 成员变量,必须考虑是否为 final。

(7)类成员方法只供类内部调用,必须是 private。

(8)类成员方法只对继承类公开,那么限制为 protected。

java如何设置文件的权限

在Java中,文件权限是非常具体的操作系统:* nix中,NTFS(Windows)及FAT/FAT32,都有着别样的文件权限。 Java提供了一些通用的文件权限来处理它。

检查文件权限允许:

1.file.canExecute(); – 返回true,文件是可执行的,false 则不是。

2.file.canWrite(); – 返回true,文件是可写的,false 则不是。

3.file.canRead(); – 返回true,文件是可读的,false 则不是。

设置文件权限:

1.file.setExecutable(boolean); – true允许执行操作; false则是禁止它。

2.file.setReadable(boolean); – true允许读操作; false则是禁止它。

3.file.setWritable(boolean); – true允许写操作; false则是禁止它。

在* nix的系统中,可能需要配置有关文件权限的详细指定,例如设置777权限的文件或目录,但是,Java的IO类没有现成的方法,但你可以使用下面的解决方法:

Runtime.getRuntime().exec("chmod 777 file");文件权限的例子

import java.io.File;

import java.io.IOException;

×只能给当前用户赋予对该文件的权限,调用createNewFile()方法默认的权限是644.

×/

public class FilePermission

{

public static void main( String[] args )

{

try {

File file = new File("/home/test3.txt");

if (file.createNewFile()){

System.out.println("File is created!");

//Runtime.getRuntime().exec("chmod 777 /home/test3.txt");

file.setExecutable(true);//设置可执行权限

file.setReadable(true);//设置可读权限

file.setWritable(true);//设置可写权限

System.out.println("is execute allow : " + file.canExecute());

System.out.println("is read allow : " + file.canRead());

System.out.println("is write allow : " + file.canWrite());

}else{

System.out.println("File already exists.");

}

} catch (IOException e) {

e.printStackTrace();

}

}

java通用权限的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于Java开发企业级权限管理、java通用权限的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-10,除非注明,否则均为首码项目网原创文章,转载请注明出处。