Java学习笔记第十天:2_修饰符的概述和总结

Java访问修饰符详解
本文详细介绍了Java中访问修饰符的使用方法,包括权限修饰符(private, 默认, protected, public)、状态修饰符(static, final)及抽象修饰符(abstract)。通过具体的类和方法示例,展示了不同修饰符对类成员的访问限制。
/*
	修饰符:
		权限修饰符:private,默认的,protected,public
		状态修饰符:static,final
		抽象修饰符:abstract
		
	类:
		权限修饰符:默认修饰符,public
		状态修饰符:final
		抽象修饰符:abstract
		
		用的最多的就是:public
		
	成员变量:
		权限修饰符:private,默认的,protected,public
		状态修饰符:static,final
		
		用的最多的就是:private
		
	构造方法:
		权限修饰符:private,默认的,protected,public
		
		用的最多的就是:public
		
	成员方法:
		权限修饰符:private,默认的,protected,public
		状态修饰符:static,final
		抽象修饰符:abstract
		
		用的最多的就是:public
		
	除此以外的组合规则:
		成员变量:public static final
		成员方法:public static 
		          public abstract
				  public final
		
*/
//此处不允许使用修饰符private
//此处不允许使用修饰符protected
//此处不允许使用修饰符static
public class Demo {
	//成员变量
	private int x = 10;
	int y = 20;
	protected int z = 30;
	public int a = 40;
	public final int b = 50;
	public static int c = 60;
	public static final int d = 70;
	//此处不允许使用修饰符abstract
	//abstract int e = 80;
	
	//构造方法
	private Demo(){}
	
	Demo(String name){}
	
	protected Demo(String name,int age) {}
	
	public Demo(String name,int age,String address) {}
	
	//此处不允许使用修饰符static
	//public static Demo(){}
	//此处不允许使用修饰符final
	//public final Demo() {}
	//此处不允许使用修饰符abstract
	//public abstract Demo(){}
	
	//成员方法
	//static void show() {}
	//abstract void show();
	//final void show(){}
}

/*
	权限修饰符:
					本类	同一个包下(子类和无关类)	不同包下(子类)	不同包下(无关类)
		private 	Y		
		默认		Y		Y
		protected	Y		Y							Y
		public		Y		Y							Y				Y
*/

public class Father {
	private void show() {
		System.out.println("show");
	}
	
	void show2() {
		System.out.println("show2");
	}
	
	protected void show3() {
		System.out.println("show3");
	}
	
	public void show4() {
		System.out.println("show4");
	}
	
	public static void main(String[] args) {
		Father f = new Father();
		f.show();
		f.show2();
		f.show3();
		f.show4();
	}
}
public class Son extends Father {
	public static void main(String[] args) {
		Father f = new Father();
		//f.show();
		f.show2();
		f.show3();
		f.show4();
		System.out.println("--------------");
		
		Son s = new Son();
		//s.show();
		s.show2();
		s.show3();
		s.show4();
	}
}
public class Test {
	public static void main(String[] args) {
		Father f = new Father();
		//f.show();
		f.show2();
		f.show3();
		f.show4();
	}
}

不同包下(子类):

package cn.qx;

import com.liuyi.Father;

public class Son2 extends Father {
	public static void main(String[] args) {
		Father f = new Father();
		//f.show();
		//f.show2();
		//f.show3();
		f.show4();
		System.out.println("--------------");
		
		Son2 s = new Son2();
		//s.show();
		//s.show2();
		s.show3();
		s.show4();
	}
}

不同包下(无关类)

package cn.qx;

import com.liuyi.Father;

class Test2 {
	public static void main(String[] args) {
		Father f = new Father();
		//f.show();
		//f.show2();
		//f.show3();
		f.show4();
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值