1. java裡面怎麼訪問同一個類裡面的private屬性,怎樣訪問不同類的屬性,不同類中的private屬性
公共屬性是可以通過對象來獲取到的
但是私有屬性 只能在當前類中訪問,如果需要在另一個類中強制使用該屬性,
可以通過反射來破壞封裝,來實現訪問 私有屬性,
下面是一個簡單的 小例子。可以用來幫助你理解!
importjava.lang.reflect.Field;
publicclassA{
publicstaticvoidmain(String[]args)throwsException{
//獲取類對象
Classclazz=B.class;
//根據B類中的屬性名c獲取屬性
Fieldf=clazz.getDeclaredField("c");
//破換封裝(允許在A類中訪問B類中的私有屬性c)
f.setAccessible(true);
//根據反射創建b2對象
Bb=(B)clazz.newInstance();
System.out.println("原值"+f.getInt(b));
//修改私有屬性的值為100
f.setInt(b,100);
System.out.println("修改後值"+f.getInt(b));
}
}
classB{
privateintc=10;
publicintd=11;
}
2. java中只能通過對象來訪問類的屬性或者方法嗎
你這個例子,只是對象自己內部調用,有一個隱含的自身應用對象「this」,相當於this.a=10.外部訪問的話,靜態的屬性和方法不需要通過實例對象訪問,直接用類名就行,如Math.random()。還有反射機制,雖然不用使用new關鍵字,但也要通過newInstance()等方法搞到類的實例。
3. java里一個私有的屬性如何在其他類裡面進行訪問
在這個類裡面定義一個get方法
for example:
public class User{
private String name;
public User(String name) {//有參構造方法,你應該知道吧
this.name=name;
}
public String getName(){//注意返回類型
return this.name;
}
}
然後在其他類裡面你就可以用User的對象調用了
User user=new User("shenerd");
String str=user.getName();//取出User類裡面的私有變數了
4. java怎麼實現一個類訪問另一個類的屬性
classa{
publicinta=100;
}
classb{
publicvoidmethod(){
aa1=newa();
System.out.println(a1.a);
}
}
publicclassdemo{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
bb1=newb();
b1.method();
}
}
上面這種方式是直接訪問!
classa{
publicinta=100;
}
classbextendsa{
publicvoidmethod(){
System.out.println(super.a);
}
}
publicclassdemo{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
bb1=newb();
b1.method();
}
//這種方式通過繼承來訪問
}
5. JAVA里靜態的屬性怎麼在jsp里訪問
第一:如果是對象的話,你應該去看看jsp:bean的用法。只有配合使用jsp:getProperty才有用
第二:是靜態的函數,也就不怕了。你在
<%@ page language="java" import="java.util.*,com.rh.entity.*" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
import="java.util.*,com.rh.entity.*" 加上這句,當然是你的Infomation 類的全路徑,你就可以在jsp中用了
<%=Infomation.getJavaRuntimeVersion() %>
6. Java中一個類如何去訪問另一個類的對象的屬性數據
這要看另一個類所在位置及類與屬性的修飾符有關。
兩類在同一包中時,且為非private的,可以用對象.屬性的形式來訪問。
不同包時,要用import導入該類,還要考慮修飾符的影響,預設或用private修飾的屬性是不可見的,即不能訪問的。
當然,用private修飾的屬性,可以提供公有的方法來訪問它。
還是去找些資料吧,這些不太好說清。
7. Java中成員屬性默認訪問修飾符是什麼
Java中成員屬性默認修飾符為default.
舉個栗子 : 假如有成員變數name,類型為String,則聲明為String name ;
此時該變數的默認許可權修飾符就是default.
下附Java成員許可權修飾符許可權 :
private : 只能在當前類中訪問
default : 只能在當前類以及同一個包下訪問
protected : 除了當前類以及同一個包下訪問外,還為不在同一個包下的子類提供了一種訪問父類成員的方式
public : 同一個工程下,所有包均可訪問.
望採納!如贊同請點贊!您的肯定就是我的動力!
8. Java 類的屬性 訪問許可權的問題
private類型的是可以在本類當中隨時訪問和修改的 但是如果定義的是靜態常量就不可修改 當然靜態常量我們常常設為public類型的
比如
public class Integrhaha{
private in i;
} 那麼 這個i就是可以在Integerhaha這個類中訪問的 比如這個類中有個方法 需要用到這個i 那麼就沒問題 用就行 ;可是若是在另外一個類中 則就不能訪問這個i了
而public中的就沒有限制了 想用就用 無論是誰
你可以到網上搜一下public private protected 這三個的區別 不會很難的>
9. 關於java 繼承類 子類調用父類方法訪問屬性問題
say這個方法是定義在父類Dog中的,所以他直接調用了父類的name,輸出「小劉」。
如果把say這個方法復制一下放到HomeDog中,那它會調用HomeDog的name,輸出「小明」。