Java面向对象进阶:封装与私有属性,私有方法

封装:

面向对象三大特性:

封装,继承,多态

 

封装:将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问

用private修饰的属性和方法只能在本类中被访问.

get() set()方法其实就是为封装而设计的.

封装的步骤:

封装的步骤

私有属性

例子

package cn.xtnotes.u9;
public class Card {
	private double yue;  //私有属性 不可以直接被外部访问
	double num;
	public double getYue(String Key) {
		if("aaa".equals(Key)) {
			return yue;	
		}else {
			return 0;
		}
	}
	public void setYue(double yue) {
		if(yue>200) {
			this.yue = yue;
		}else {
			System.out.println("不可少于200");
		}
	}
}
package cn.xtnotes.u9;
public class T1 {
	public static void main(String[] args) {
		Card cc=new Card();
		cc.num=100;                      //共有属性  可直接调用
		System.out.println(cc.num);
		//cc.yue=600;                    //私有属性  不可直接调用,会报错
		//System.out.println(cc.yue);
		cc.setYue(500);
		double yue=cc.getYue("aaa");
		System.out.println(yue);
	}
}

 私有方法

package cn.xtnotes.u9;
public class Card {
	private double yue;  //私有属性 不可以直接被外部访问
	double num;
	public double getYue(String Key) {
		if("aaa".equals(Key)) {
			return yue;	
		}else {
			return 0;
		}
	}
	public void setYue(double yue) {
		if(yue>200) {
			this.yue = yue;
		}else {
			System.out.println("不可少于200");
		}
	}
	public void wz() {
		System.out.println("card完整");
		this.chaka();             //内部调用私有方法
	}
	private void chaka() {
		System.out.println("插入成功");
	}
}

 

package cn.xtnotes.u9;

public class T1 {
	public static void main(String[] args) {
		Card cc=new Card();
		cc.num=100;                      //共有属性  可直接调用
		System.out.println(cc.num);
		//cc.yue=600;                    //私有属性  不可直接调用,会报错
		//System.out.println(cc.yue);
		cc.setYue(500);
		double yue=cc.getYue("aaa");
		System.out.println(yue);
		//cc.chaka();                    //私有方法不可再外部调用  报错
		cc.wz();                       //共有方法  可在外的调用
	}
}

封装

阅读剩余
THE END