java 构造函数默认修饰符

来源:互联网 发布:mysql防止高并发 编辑:程序博客网 时间:2024/06/07 03:26

在进行java web分页实验时忽然想起构造器没有修饰符会如何,及各种修饰符在不同情况下对不同权限下的使用。

进行如下测试:

java版本:java 1.7.0

第一、在class类修饰符为public前提下

第二、在class类修饰符为缺省前提下

1.public 

2.private

3.protected

4.缺省

开始:

第一种:class修饰符public
package top.chen.jdbc;
public class PageService {protected PageService(float protectedf){}private PageService(int privatei){}public  PageService(String publics){}PageService(double defaultd){}}

在同一个包中

不同类可以引用:

1.public 

3.protected

4.缺省

 PageService ps = new PageService(defaultd);     ps = new PageService(protectedf);     ps = new PageService(publics);

同一包中子类中情况相同,只能获取1,3,4.

在不同包中,只可以引用public

PageService ps = new PageService(publics);
在不同包中子类中则只有1,3。


第二种情况:

class 修饰符缺省

在其他包中无法访问该类,只能在同一包目录下使用并只能使用1,3,4.


总结:

四种方法修饰符:

1.public 

2.private

3.protected

4.缺省

类public 

相同包不同类和相同包其子类对构造器权限相同,能获取非私有方法其他3种。

不同包不同类可获取public ,不同包子类则多一种protected。

类缺省

其他包无法访问

同一包目录下可使用非私有方法。


原创粉丝点击