Java中修饰符访问权限控制符号public、protected、缺省和private

	/**
	 * 访问控制权限符
	 * 1、访问控制权限服来控制元素的访问范围
	 * 2、访问权限修饰符包括:
	 * 		public                表示公开的,在任何位置都可以访问
	 * 		protected				同包,子类
	 * 		缺省						同包
	 * 		private					表示私有的,只能在本类中访问
	 * 3、访问控制权限修饰符可以修饰类、变量、方法...
	 * 4、当某个数据只希望子类使用,使用protected进行修饰
	 * 5、修饰符的范围:
	 * private < 缺省 < protected < public 
	 */

类只能采用public和缺省的修饰符进行修饰【内部类除外】

下面来主要介绍缺省和保护的例子

1、User类,此处主要讨论 i 和 j 的修饰符

package com.bjpowernode.javase.test005;

public class User {
//受保护的
	protected int i = 10;
	
	//缺省的
	int j = 20;
	
	private void m1(){
		
	}
	
	public void m2(){
		
	}
	protected void m3(){
		
	}
	void m4(){
		
	}
}

2.调用import com.bjpowernode.javase.test005.User包,构建User()对象,由于

i 是受保护的,在同包和子类这两种情况下使用,现在既不同包也不是子类,无法调用
j 是缺省的,只能在同包中使用,现在不同包,无法调用

package com.bjpowernode.javase.test006;

import com.bjpowernode.javase.test005.User;		//调用其他包

public class UserTest {
	
	public static void main(String[] args) {
		User u = new User();
		//System.out.println(u.i);     //i是受保护的,在同包和子类这两种情况下使用,现在既不同包也不是子类
		//System.out.println(u.j);     //j是缺省的,只能在同包中使用,现在不同包
		}

3.调用import com.bjpowernode.javase.test005.User包,继承User类,为User类的子类,由于

i是受保护的,在同包和子类这两种情况下使用,所以可以在这个子类中使用
j是缺省的,只能在同包中使用

package com.bjpowernode.javase.test006;
import com.bjpowernode.javase.test005.User;      //调用其他包

public class Driver extends User {
	public void m(){
		System.out.println(this.i);       //i是受保护的,在同包和子类这两种情况下使用,所以可以在这个子类中使用
		//System.out.println(this.j);  //j是缺省的,只能在同包中使用		
	}
}

4.类只能采用public和缺省的修饰符进行修饰【内部类除外】

创建类的时候我们发现只有这两个选项,public和缺省(default)两种,如图示:
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值