java私有属性
㈠ 关于java中的私有属性
因为私有属性是通过Object o这个对象来调用的啊,并没有直接访问私有属性
㈡ java里一个私有的属性如何在其他类里面进行访问
既然是私有属性就不建议直接访问的,一般会提供方法来访问私有属性,这样可以在方法中对属性的访问做一些控制。
当然也可以通过反射来直接访问。
我们准备一个包含私有属性的类
然后通过反射来访问属性,记得一定要加aField.setAccessible(true);这句代码,不然就不能访问私有属性。
不加aField.setAccessible(true);
加了aField.setAccessible(true);
㈢ Java反射设置私有属性和获取属性
Java代码
package ;
import java lang reflect Field;
import java lang reflect InvocationTargetException;
import java lang reflect Method;
public class TestBean {
private int age;
public static void main(String []args) throws InstantiationException IllegalAccessException SecurityException NoSuchFieldException{
try {
Class<?> class =Class forName( TestBean );
Object tObject=class newInstance();
Field field=class getDeclaredField( age );
field setAccessible(true); //设置私有属性范围
field set(tObject );
System out print(field get(tObject));
try {
Method method=class getMethod( setAge int class);
method invoke(tObject );
Method getMethod=class getMethod( getAge );
System out println(getMethod invoke(tObject));
} catch (NoSuchMethodException e) {
// TODO Auto generated catch block
e printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto generated catch block
e printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto generated catch block
e printStackTrace();
}
} catch (ClassNotFoundException e) {
// TODO Auto generated catch block
e printStackTrace();
}
}
public int getAge() {
return age;
}
public void setAge(int age) {
this age = age;
}
lishixin/Article/program/Java/hx/201311/26324
㈣ java中为什么要将属性进行私有化
这就涉及到Java的封装性,通过private将属性私有化,并提供public的set/get方法来赋值和取值,就是为了隐藏对象的细节,让使用者不能随意访问数据,只能通过设计好的set/get方法来访问和修改数据。
这保证了数据的安全性,同时也确保了代码的可维护性。
㈤ java中受保护的属性型是不是指私有属性
受保护属性是指的 protected修饰的属性, 并不是私有属性,私有属性是private修饰的
protected修饰的属性,是允许同包下其他类直还有子类可以直接接访问的,private修饰的属性是仅限本类内可以直接访问,限制范围比protected要小
㈥ java 私有的属性,方法和公有的介绍一下
publicclassTest{
privateStringgen; //私有属性,表示用户性别
publicStringgetGen(){ //公开方法,用来获取这个用户的性别
returngen;
}
publicvoidsetGen(Stringgen){ //公开方法,用来获取这个用户的性别
this.gen=testGen(gen); //当用户设置性别的时候,调用私有方法来判断参数是否合法
}
/**
*私有方法,用来测试用户设置的性别是否为男|女,如果设置不正确默认为男
*@paramgen 可选值,男|女
*@return如果不合法,则返回男
*/
privateStringtestGen(Stringgen){
if("男".equals(gen)||"女".equals(gen)){
returngen;
}else{
return"男";
}
}
publicstaticvoidmain(String[]args){
}
}
㈦ java 可以访问父类的私有属性吗
不可以。
私有属性(private)只能当前类才能调用,子类无法访问。
㈧ JAVA中私有属性private可以被子类继承吗
肯定是被继承的。但是子类无法访问父类的私有属性或方法,子类继承是继承父类的所有东西除了构造函数。