Java面向对象编程 -2

成员属性封装

在类之中的组成就是属性和方法,一般而言方法都是对外提供服务的,所以是不会进行封装处理的,而对于属性需要较高的安全性,所以往往需要对其进行保护 这个时候就需要采用封装性对属性进行保护。
在默认情况下,对于类中的属性是可以通过其他类利用对象进行调用的。
解决办法:可以利用private关键字对属性进行封装处理。
而属性一旦封装之后外部将不能够直接访问,即对外部不可见,但是对类的内部是可见;
那么要想让外部的程序可以访问封装的属性,则在Java开发标准中提供了如下要求:

  • setter getter设置或取得属性可以使用setXxx()、getXxx()方法;以private String name;为例
    • 设置属性方法: public void setName(String name);
    • 获取属性方法: public String getName();
class Person{
	private int age;
	private String name;
	
	public void setAge(int a) {
		age = a;
	}
	public int getAge() {
		return age;
	}
	public void setName(String n) {
		name = n;
	}
	public String getName() {
		return name;
	}
	
	public  void intorduce() {
		System.out.println("age= "+age+" name= "+name);
	}
}
public class xxx {
	public static void main(String[] args) {
		Person per1 = new Person();
		per1.setAge(16);
		per1.setName("sakura");
		per1.intorduce();
	}

}

>>>age= 16 name= sakura

在以后进行任何类定义得时候一定要记住,类中的所有属性都必须使用private封装(标准做法 90%),并且提供有setter和getter方法。
封装性是java面向对象的第一大主要特征 ,封装性不仅仅是一个属性封装这么简单,它跟访问权限有关。

posted @ 2020-02-17 12:23  上杉家主-上杉绘梨衣  阅读(105)  评论(0)    收藏  举报