Java 建構函式的訪問修飾符

2021-07-07 06:15:10 字數 1039 閱讀 4008

構造方法可以處於public、protected、private和預設四種訪問級別之一。

public

public這裡就不多說了

private

當構造方法為private級別時,意味著只能在當前類訪問它,不能被繼承,不能被其他程式用new建立例項物件。可以對比其他幾種修飾符的作用:abstract修飾的類,不允許被例項化,這點和private修飾構造方法相同,但abstract修飾的類可以被繼承,擁有子類,可以建立子類的例項;final類禁止被繼承,這點和private修飾構造方法相同,但是final類可以用new建立例項物件。

protected

如果建構函式是protected,那麼該類可以繼承,可以在被包內其他類中產生例項,但是無法在包外或者子類以外的地方產生例項.

看一下下面的程式

package com.ustc.sub;

public

class

base

} package com.ustc.sub;

public

class

protecteddemo

extends

base

public

static

void

main(string args)

}package com.ustc.sup;

import com.ustc.sub.base;

public

class

protecteddemo1

}

作用域 當前類 同一package 子孫類 其他package

public √ √ √ √

protected √ √ √ ×

friendly √ √ × ×

private √ × × ×

不寫時預設為friendly

子孫類可以在同一包,也可以不乙個包,此時以最大許可權為準

java 訪問修飾符

default 預設 包訪問許可權 同乙個包內都可以訪問,類內可以訪問,同乙個包的子類也可以訪問,即在繼承機制中,同一包可以被繼承 public 公開的,不論是否在包內還是包外,類內還是類外都可以訪問,也都可以被繼承 protected 保護的,在包內可以訪問到,在包外不可訪問,類內可以訪問,子類可...

java訪問修飾符

純粹是個人學習總結,如有不對的地方請吐槽。public public修飾的類 類屬變數及方法,包內及包外的任何類均可以訪問 protected protected修飾的類 類屬變數及方法,包內的任何類,及包外的那些繼承了此類的子類才能訪問 private private修飾的類 類屬變數及方法,包內...

Java 訪問修飾符

類的訪問修飾符 方法和域的訪問修飾符 基類,package ly.practice public class refernce protected refernce string name public refernce string name,int age public string getna...