Ⅰ java中如何調用私有變數或方法
private關鍵字
(1)私有的意義,可以修飾成員變數和成員方法
(2)特點:
被private修飾的後的成員只能在本類中被訪問
(3)private的應用:
以後再寫一個類的時候:
把所有的成員變數給private了
提供對應的getXxx()/setXxx()方法
/*
封裝和private的應用:
A:把成員變數用private修飾
B:提高對應的getXxx()和setXxx()方法
*/
//定義學生類
classStudent{
//姓名
privateStringname;
//年齡
privateintage;
//姓名獲取值
publicStringgetName(){
returnname;
}
//姓名設置值
publicvoidsetName(Stringn){
name=n;
}
//年齡獲取值
publicintgetAge(){
returnage;
}
//年齡賦值
publicvoidsetAge(inta){
age=a;
}
}
//測試類
classStudentTest{
publicstaticvoidmain(String[]args){
//創建學生對象
Students=newStudent();
//使用成員變數
//錯誤:被私有修飾了,外界不能直接訪問了
//System.out.println(s.name+"---"+s.age);
System.out.println(s.getName()+"---"+s.getAge());
//給成員變數賦值
//s.name="林青霞";
//s.age=27;
//通過方法給賦值
s.setName("林青霞");
s.setAge(27);
System.out.println(s.getName()+"---"+s.getAge());
}
}
Ⅱ java中, 怎麼調用別的類的私有方法
利用反射即可調用;
簡易實例代碼如下:
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
/**
* @author thomaslwq
* @version 創建時間:Sep 4, 2012 9:53:49 PM
* 類說明
*/
public class ReflectionTest {
public static void setObjectColor(Object obj) throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAcces***ception, InvocationTargetException{
Class cls = obj.getClass();
//獲得類的私有方法
Method method = cls.getDeclaredMethod("privateMethod", null);
method.setAccessible(true); //沒有設置就會報錯
//調用該方法
method.invoke(obj, null);
}
public static void main(String args[]) throws SecurityException, IllegalArgumentException, NoSuchMethodException, IllegalAcces***ception, InvocationTargetException{
setObjectColor(new MyTest());
}
}
//測試類
class MyTest{
public void setMyTest(){
System.out.println("setMyTest");
}
/**
類的私有方法
**/
private void privateMethod(){
System.out.println("調用了 private Method");
}
}
Ⅲ 怎麼樣在類的外部 調用類中的私有方法,和給類中的私有屬性賦值
一般是在類的內部寫public的方法來給private的屬性賦值。
Ⅳ 子類如何調用父類private修飾的屬性或方法
在JAVA中,子類是無法繼承父類的private修飾的屬性和方法的,也就是說子類繼承了父類,卻沒有繼承其用private修飾的屬性和方法,就無法調用了。這有利於在開發過程中保護父類的某種屬性和方法不被覆蓋
需要注意的是:使用了private修飾的屬性和方法,默認使用final修飾,也就是說使用了private修飾的屬性,是一個常量,第一次載入初始化後就不能夠更改!
希望滿意,謝謝!
Ⅳ 私有內部類的私有方法怎麼調用
對外部類來說,內部類也是其內部成員,當然可以調用其私有成員(包括私有構造器)。
Ⅵ 在php中如何設置類的屬性,如何調用類的方法
PHP訪問類的屬性、方法使用箭頭語法(->)。這里我給你一個例子供你參考:
<?php
classMyClass{//定義MyClass類
public$name;//定義了一個公有屬性
protected$_age;//定義了一個保護屬性
private$_email;//定義了一個私有屬性
publicfunctionmy_method(){//定義my_method方法
}
protectedfunction_my_method2(){//定義_my_method2方法
}
}
$obj=newMyClass;//實例化
$obj->name='noname';//設置name屬性
$obj->_age=12;//這是錯誤的,不能設置保護屬性
$obj->address='KingStreet.'//設置一個未聲明的屬性是允許的,效果和公有屬性類似,但未賦值前不能使用。
$obj->my_method()//調用公有方法
$obj->_my_method2();//這是錯誤的,不能調用保護方法
你需要理解繼承、公有、保護和私有的概念。
繼承:子類繼承父類的公有、保護屬性和方法。
公有:類的實例可以訪問的屬性和方法。
保護:只能在類的內部及其子類內部訪問的屬性和方法。
私有:只能在類的內部訪問的屬性和方法。
這是個很基礎的問題,建議你多看書。
Ⅶ JAVA中重寫父類方法後,這個方法如何調用父類私有屬性方法
父類的私有屬性和方法是不被子類繼承調用的,如果你非要這么做可以
1、在父類中另外定義protected
的方法操作私有方法,子類調用該方法
2、將私有方法改為protected
3、使用反射,獲取父類所有方法,根據名稱調用
Ⅷ JAVA如何調用類的私有成員public和private如何區分使用!!!!
若是調用私有變數,則可以在類中定義get()方法,即返回值就是你想得到的那個變數。Java中一般把變數(屬性)定義成私有的,把方法定義成公有的。public定義的屬性或方法在子類中可以調用,而private定義的屬性或方法在子類中不可以調用。
Ⅸ java提問 類里私有的屬性怎麼調用我寫set get方法了。但是在主函數不知道怎麼用
看代碼:
publicclassTest{
privateintnum=3;
privateintnum2=3;
publicstaticvoidmain(String[]args){
Testt=newTest();
t.setNum(0);
inta=t.getNum();
t.setNum2(2);
intb=t.getNum2();
}
publicintgetNum(){
returnnum;
}
publicvoidsetNum(intnum){
this.num=num;
}
publicintgetNum2(){
returnnum2;
}
publicvoidsetNum2(intnum2){
this.num2=num2;
}
}
Ⅹ java類中方法private怎麼調用
私有方法,類外部是無法調用的,解決方法,一,修改為public方法,而,在類內部再添加一個public方法,該方法去調用私有,這樣就不用改動到原方法了