例如:类A中,double year = 1980; private double getYear() { return year; }类B中, A a = new A(); double year1= a.getYear(); System.out.print("year1="+year1);为什么输出year1为空呢?怎么样才能取到值呢?谢谢
类A中,double year = 1980; public double getYear() { return year; } 类B中, A a = new A(); double year1= a.getYear(); System.out.print("year1="+year1); 应该就可以了
用了private,怎么样才能取到值呢?
private是私有的,只有在本类中才能访问得到;你把private去掉就能取得到了
怎么用set方法,再用get取值呢?
class A{ private ValueA; set(get)函数 }class B{ A a =new A(); b.setValueA(//输入你的值); b.getValueA(); }eclipse 中的字段set,get 会自动生成的,不用自己写,自己写还爱错。
Class{ double year; public void setYear(double year){ this.year=year; } public double getYear(){ return year; } }
Method m = A.class.getDeclaredMethod("getYear"); m.setAccessible(true); System.out.println(m.invoke(a));hehe~
private 是私有的,只有在A类中才能看到,要么用public,要么就在A类中继承B类。
那你就在那个类中再定义一个共有函数调用那个私有的,但是好像没什么意思啊 还是给你个单例模式的代码吧,也许你会明白点什么 class Single{ private Single(){} private static final Single s1=new Single(); public static Single getSingleInstance(){ return s1; } public void Say(){ System.out.println("我开始说话了。"); }
}public class SingletonDemo { public static void main(String[] args) { Single s=Single.getSingleInstance(); s.Say(); }}
private double getYear()
{
return year;
}类B中, A a = new A();
double year1= a.getYear();
System.out.print("year1="+year1);为什么输出year1为空呢?怎么样才能取到值呢?谢谢
public double getYear()
{
return year;
} 类B中, A a = new A();
double year1= a.getYear();
System.out.print("year1="+year1);
应该就可以了
private ValueA;
set(get)函数
}class B{
A a =new A();
b.setValueA(//输入你的值);
b.getValueA();
}eclipse 中的字段set,get 会自动生成的,不用自己写,自己写还爱错。
Class{
double year;
public void setYear(double year){
this.year=year;
}
public double getYear(){
return year;
}
}
如果想范围,可以利用javaBean的get,set方法
{
public static void main(String[] args)
{
T1 t1 = new T1();
String name = t1.getName();
System.out.println(name);
t1.setName("b");
String name1 = t1.getName();
System.out.println(name1);
}}
class T1
{
String name = "a";
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
修改为:
public double getYear()
一般的设计方案是把类中的成员变量设置成private,而提供公有构造器去访问和设置成员变量,也就是用SET或则GET方法去实现行为,这样做的目的是为了保证数据的完整型。
建议LZ多看点J2SE基础方面的东西,对面向对象程序设计的封装,继承和多态要有一定的了解!
m.setAccessible(true);
System.out.println(m.invoke(a));hehe~
private 是私有的,只有在A类中才能看到,要么用public,要么就在A类中继承B类。
还是给你个单例模式的代码吧,也许你会明白点什么
class Single{
private Single(){}
private static final Single s1=new Single();
public static Single getSingleInstance(){
return s1;
}
public void Say(){
System.out.println("我开始说话了。");
}
}public class SingletonDemo {
public static void main(String[] args) {
Single s=Single.getSingleInstance();
s.Say(); }}