您的位置:

java权限修饰符,java权限修饰符哪个权限最大

本文目录一览:

java中四种访问权限修饰符的各种情况介绍(最好是个人心得!!)、简明易懂些的

访问修饰符有四种public protected 默认的不写的 private

要区分的重点 在同包中的类和不同包中类中的访问 (注意这里是指类和类之间的访问权限)

同包的类是指写在一个文件夹中的类,不同包中的类是指写在不同文件夹中的类(如不同项目和不同包都是这个范畴)

下面关键的权限问题了

public 访问权限最大,同包(同文件夹)里面的类绝对是可以互相访问的,不同包中的类只要经过import得到了路径后也是可以通过类的对象访问的

protected 和 默认的比public访问权限都要小(不能在其他包中被访问除非继承这里是指protected)但他们两之间有细微的区别就是在不同包中的类继承protected和 默认的时候 ,继承的类能够访问用protected修饰的成员而不能访问默认即不写修饰符的成员

private 范围最小 只能在类内部的成员之间进行访问,外部的类是绝对没有办法通过对象访问到私有成员的,继承的类也不会继承private的成员(完全手打)

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语言中有四种不同的限定词,提供了四种不同的访问权限。

1) private 类中限定为private的成员,只能被这个类本身访问。如果一

个类的构造方法声明为private,则其它类不能生成该类的一个实例。

2) default 类中不加任何访问权限限定的成员属于缺省的(default)访问状态:

friend,可以被这个类本身和同一个包中的类所访问。

3) protected 类中限定,为protected的成员,可以被这个类本身、它的子类(包括同一个包中以及不同包中的子类)和同一个包中的所有其他的类访问。

4) public 类中限定为public的成员,可以被所有的类访问。

5)final 关键字可以修饰类、类的成员变量和成员方法,但final 的作用不同。

(1) final 修饰成员变量:final修饰变量,则成为常量,修饰成员变量时,定义时同时给出初始值,且以后不能被修改,而修饰局部变量时不做要求。

(2) final 修饰成员方法:final修饰方法,则该方法不能被子类重写

(3) final 类:final修饰类,则类不能被继承 n6)java语言中,用abstract 关键字来修饰一个类时,这个类叫做抽象类,用abstract 关键字来修饰一个方法时,这个方法叫做抽象方法。

格式如下:

abstract class abstractClass{ …} //抽象类  

abstract returnType abstractMethod([paramlist]) //抽象方法 n 抽象类必须被继承,抽象方法必须被重写。抽象方法只需声明,无需实现;抽象类不能被实例化,抽象类不一定要包含抽象方法。若类中包含了抽象方法,则该类必须被定义为抽象类。若一个类继承了一个抽象类,则抽象类的抽象方法必须被实现,否则子类必须声明为abstract.

java中修饰符有哪些

java的修饰符有:权限修饰符:public、protected、default、private

修饰符:abstract、static、final

public 使用对象:最广,类、接口、变量、方法

protected使用对象:变量、方法 注意:不能修饰类(外部类)

default 使用对象:类、接口、变量、方法。(即缺省,什么也不写)

private 使用对象:变量、方法 注意:不能修饰类(外部类)

abstract使用对象:类、接口、方法

static 使用对象:类、变量、方法、初始化函数(注意:修饰类时只能修饰 内部类 )

final 使用对象:类、变量、方法

transient:告诉编译器,在类对象序列化的时候,此变量不需要持久保存

volatile:指出可能有多个线程修改此变量,要求编译器优化以保证对此变量的修改能够被正确的处理

native:用该修饰符定义的方法在类中没有实现,而大多数情况下该方法的实现是用C、C++编写的。

synchronized:修饰方法,多线程的支持

类分外部类和内部类,他们的访问控制是相同的吗

外部类是相对于内部类而言的,内部类是定义在类里面的类。

外部类的修饰符有:

default(缺省,不写):类定义时前面未加任何修饰符,表示同一个包中可见。

public:修饰类时表示该类能被项目中所有类可见

abstract:表示是抽象类

final:表示类不可以被继承

scrictpf:(java关键字) 当对一个类或接口使用 strictfp 关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算。严格约束意味着所有表达式的结果都必须是 IEEE 754 算法对操作数预期的结果,以单精度和双精度格式表示

内部类又分:成员内部类、局部内部类、静态内部类、匿名内部类

成员内部类:作为外部类的一个成员存在,与外部类的属性、方法并列

局部内部类:定义在外部类的方法体里面的类

静态内部类:使用static修饰的内部类

匿名内部类:就是没有名字的内部类

成员内部类修饰符有:

public:

protected:

private:private不能修饰外部类,

abstract:

final:

static:可以当做普通类使用,而不用先实例化一个外部类。(用他修饰后,就成了静态内部类了)

strictfp:(java关键字) 即 strict float point (精确浮点)。(可修饰类、接口、方法)

扩展资料:

java中的类修饰符、成员变量修饰符、方法修饰符。

类修饰符:

public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。

abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。

final,将一个类生命为最终(即非继承类),表示他不能被其他类继承。

friendly,默认的修饰符,只有在相同包中的对象才能使用这样的类。

成员变量修饰符:

public(公共访问控制符),指定该变量为公共的,他可以被任何对象的方法访问。

private(私有访问控制符)指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。

protected(保护访问控制符)指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。

friendly ,在同一个包中的类可以访问,其他包中的类不能访问。

final,最终修饰符,指定此变量的值不能变。

static(静态修饰符)指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。

transient(过度修饰符)指定该变量是系统保留,暂无特别作用的临时性变量。

volatile(易失修饰符)指定该变量可以同时被几个线程控制和修改。

方法修饰符:

public(公共控制符)

private(私有控制符)指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)

protected(保护访问控制符)指定该方法可以被它的类和子类进行访问。

final,指定该方法不能被重载。

static,指定不需要实例化就可以激活的一个方法。

synchronize,同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止其他线程的访问,运行结束后解锁。

native,本地修饰符。指定此方法的方法体是用其他语言在程序外部编写的。

参考资料:百度百科-修饰符

java 中的修饰符有那几个,它们的访问权限的范围是多少?

java中的修饰符分为类修饰符,字段修饰符,方法修饰符。根据功能的不同,主要分为以下几种。

1、权限访问修饰符

public,protected,default,private,这四种级别的修饰符都可以用来修饰类、方法和字段。

包外 子类 包内 类内

public yes yes yes yes

protected no yes yes yes

default no no yes yes

private no no no yes

2、final修饰符

final的意思是不可变,他可以修饰类、字段、方法。修饰类后类不能被扩展(extends),也就是不能被继承。修饰字段后字段的值不能被改变,因此如果有final修饰字段,应该对字段进行手动初始化。修饰方法后该方法不能被改变,也就是重写。

3、abstract修饰符

abstract是抽象的意思,用来修饰类和方法,修饰类后,该类为抽象类,不能被实例化,必需进行扩展。修饰方法后,该方法为抽象方法必须被子类重写(override)。

4、static修饰符

static用来修饰内部类,方法,字段。修饰内部类说明该内部类属于外部类而不属于外部类的某个实例。修饰字段说明该字段属于类而不属于类实例。修饰方法说明该方法属于类而不属于类实例。