大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Java面向?qū)ο?/div>
Java異常
Java數(shù)組
Java常用類
Java集合
Java IO流
Java線程
Java反射
Socket編程
Java注解開發(fā)
Java GoF設(shè)計(jì)模式
HashMap
Java內(nèi)存模型
Java線性表

Java訪問權(quán)限

Java類的訪問權(quán)限

Java類的訪問權(quán)限有兩種:

公共類和非公共類

使用public修飾的類為公共類,沒有使用public修飾的類為非公共類。

公共類的應(yīng)用場景

如果這個類想要在其他包中使用就定義為公共類

非公共類只能在當(dāng)前包中使用

Java類成員的訪問權(quán)限

訪問權(quán)限

當(dāng)前類

當(dāng)前包

派生類(不在當(dāng)前包中)

其他包

私有的(private)

可以

默認(rèn)的(沒有權(quán)限修飾符)

可以

可以

受保護(hù)的(protected)

可以

可以

可以

公共的(public)

可以

可以

可以

可以

在定義類的成員時,遵循訪問權(quán)限最小化的原則。

如果想在任意位置都可以使用,就定義為public公共的。

如果想在當(dāng)前類和派生類中都可以直接使用,就定義為protected受保護(hù)的。

package com.bjpowernode.chapter01.demo02.p1;

public class Father {
	private int xx = 10;		//私有的, 只能在當(dāng)前類中使用
	int yy =  20;				//默認(rèn)的, 可以在當(dāng)前包中使用
	protected int zz = 30;		//受保護(hù)的, 當(dāng)前包/派生類中使用
	public int oo = 40;			//公共的, 任意位置
	
	//在當(dāng)前類中
	public void m1() {
		System.out.println( xx );
		System.out.println( yy );
		System.out.println( zz );
		System.out.println( oo );
	}
	
}
package com.bjpowernode.chapter01.demo02.p1;
/**
 * 測試訪問當(dāng)前包中Father類的成員權(quán)限
 * 	在同一個包中,可以使用默認(rèn)權(quán)限/受保護(hù)權(quán)限/公共權(quán)限的成員 ,不能使用私有成員
 * @author Administrator
 *
 */
public class Test {

	public static void main(String[] args) {
		//創(chuàng)建Father類的對象
		Father f = new Father();
		//訪問f的實(shí)例成員
		System.out.println(f.xx);  	//The field(字段/域) Father.xx is not visible(不可見), 沒有訪問權(quán)限
		System.out.println(f.yy);	
		System.out.println(f.zz);
		System.out.println(f.oo);
	}

}
package com.bjpowernode.chapter01.demo02.p2;

import com.bjpowernode.chapter01.demo02.p1.Father;

/**
 * 在p2包中, 測試訪問p1包中Father類的成員權(quán)限
 * 		只能訪問公共成員 
 * @author Administrator
 *
 */
public class Test02 {

	public static void main(String[] args) {
		Father f = new Father();
		
		//訪問f的成員變量
		System.out.println(f.xx);  	//The field(字段/域) Father.xx is not visible(不可見), 沒有訪問權(quán)限
		System.out.println(f.yy);	
		System.out.println(f.zz);
		System.out.println(f.oo);
	}

}
package com.bjpowernode.chapter01.demo02.p3;

import com.bjpowernode.chapter01.demo02.p1.Father;
/**
 * p3包中定義Son類, 繼承p1包中的Father類
 * 		子類繼承了父類, 就自動擁有了父類的實(shí)例變量與實(shí)例方法
 * 		Son類從Father類繼承了四個實(shí)例變量:xx,yy,zz,oo,和一個實(shí)例方法: m1()
 * @author Administrator
 *
 */
public class Son extends Father {
	//Son類從Father類繼承了四個實(shí)例變量:xx,yy,zz,oo
	
	//子類的實(shí)例方法
	//因?yàn)槔^承,所有自動擁有, 是否能夠直接使用,跟訪問權(quán)限有關(guān)
	public void sm() {
		System.out.println( xx );
		System.out.println( yy );
		System.out.println( zz ); 		//受保護(hù)的
		System.out.println( oo );
	}
}

Java方法覆蓋中的訪問權(quán)限

Java訪問覆蓋(重寫)的規(guī)則:

● 子類方法簽名必須和父類方法一致, 方法簽名就是方法名與參數(shù)列表

● 子類方法的返回值類型可以和父類方法返回值類型一樣, 也可以是父類方法返回值類型的子類型

● 子類方法的訪問權(quán)限可以和父類方法訪問權(quán)限相同,也可以比父類方法訪問權(quán)限更寬泛(更大)

如果父類方法是public修飾,子類方法只能是public修飾

如果父類方法是protected修飾,子類方法可以protected/public修飾

● 子類方法的異常不能比父類方法的異常更大

主站蜘蛛池模板: 欧美大尺度 边吃奶边做 | 成人亚洲欧美 | 一级亚洲 | 性激烈欧美三级在线播放 | 精品国产自 | 日韩不卡高清视频 | 狠狠躁天天躁 | 国产高清不卡视频 | 国产日韩精品一区二区在线观看 | 羞羞视频网页 | 久久久99精品| 俺去鲁婷婷六月色综合 | 久久久国产一区二区三区 | 狠狠插网站 | 久久久久久久综合 | 国产最新精品精品视频 | 久久er国产精品免费观看8 | 一级毛片免费网站 | 国产高清一级毛片在线不卡 | 四虎影院视频 | 福利姬在线视频国产观看 | 一区二区美女视频 | 91久久精品日日躁夜夜躁欧美 | 99精彩视频在线观看 | 成人做爰小视频 | 国产一级做a爱免费视频 | 久一视频在线观看 | 九九激情视频 | 国产一区二区三区在线观看视频 | 久久精品国产99国产精品亚洲 | 国产91免费在线观看 | 欧美成人性做爰 | 婷婷国产 | 亚洲欧美日韩高清一区二区一 | 高清在线一区二区三区亚洲综合 | 999久久免费高清热精品 | 亚洲欧美日韩激情在线观看 | 九九热线有精品视频99 | 欧美日韩福利视频一区二区三区 | 亚洲欧美精品综合中文字幕 | 97久久久久国产精品嫩草影院 |