在java中有的类中的属性是不允许外部访问的
那么就在属性前面加上private
我们来看一个案例
创建一个包 然后这个包下面放两个类 分别叫 Telephone 和 text
Telephone参考代码如下
public class Telephone {
String inname;
private String onname;
}
text参考代码如下
public class text {
public static void main(String args[]) {
Telephone telephone = new Telephone();
telephone.inname = "小猫猫";
telephone.onname = "大猫猫";
System.out.println(telephone.inname);
System.out.println(telephone.onname);
}
}
此时我们会发现 onname 属性报红了
这是因为 onname前设置了 private 他成了一个私有的变量 只能在Telephone类中去使用
那么 如果我们想在其他类中使用这个变量怎么办呢?
这是就需要我们去设置 get 和 set 方法
规范 顾名思义 get 就是 获取 用于获取属性 set 赋值 给对应的属性赋值
书写规范是 get 接变量名 变量名首字母大写 set 接变量名 变量名大写
例如 age 就是 getAge setAge
那么我们来改一下之前的代码
Telephone参考代码如下
public class Telephone {
private int shou;
private String onname;
public void setShou(int ser){
shou = ser;
}
public int getShou(){
return shou;
}
public void setOnname(String ser){
onname = ser;
}
public String getOnname(){
return onname;
}
}
我们定义了两个私有 类型的变量 一个是 数字类型的shou 和字符串类型的onname
然后定义类setShou方法 没有返回值 然后接受一个int数字类型的参数 在方法体重写 将接受到的参数赋值给shou 变量
getShou 返回一个数字类型int的变量 方法体重直接将shou返回了回去
get set 的onname方法也是同理
然后我们看测试类 text参考代码如下
public class text {
public static void main(String args[]) {
Telephone telephone = new Telephone();
telephone.setShou(13);
telephone.setOnname("大猫猫");
System.out.println(telephone.getShou());
System.out.println(telephone.getOnname());
}
}
我们先实例化了Telephone 类对象 然后通过Telephone 对象 调用了 两个变量的set方法 给两个变量赋值
然后用get方法获取变量 在System.out.println上打印出来
代码运行效果如下
这样我们的预期效果就实现啦