1. 程式人生 > >Java基礎--封裝使用案例。

Java基礎--封裝使用案例。

/**
 * Java設計思想的是面向物件的設計方式,所以在物件中有三個特性
 * 1,封裝、2,繼承,、3,多型
 * 情景:以汽車為例。
 * 1,實現汽車公里數的資料的記錄。
 * 2,實現汽車車型、公里數、型號、顏色......
 * 
 * 常見封裝的方式
 * 1,陣列封裝-->同類型的資料。
 * 1,類(物件)的封裝-->不同型別的資料。
 * 
 * 在Java中物件的體現形式是用過類來完成。
 * @author myKay
 *
 */

public class CaseDemo {
	public static void main(String[] args) {
		int [] mileage = new int[10];
		init_ints(mileage);
		show(mileage);
		
		//在Java 中物件是通過對類來體現
		Vehicle v = new Vehicle();
		add(v);
		show(v);
	}
	
	public static void add(Vehicle v){
		v.setColour("紅色");
		v.setsC("北京");
		v.setXh("BQ-001");
		v.setName("北京汽車");
	}
	
	public static void show(Vehicle v){
		System.out.println("\n"+v.getName()+","+v.getXh()+","+v.getMileage()+","+
	    v.getColour()+","+v.getsC()+","+v.isStart()+","+v.getDate());
	}
	
	public static  void init_ints(int [] i_s){
		//生成隨機資料
		Random random = new Random();
		for(int i = 0;i<i_s.length;i++){
			i_s[i] = Math.abs(random.nextInt())%1000;
		}
	}
	
	public static void show(int[] i_s){
		System.out.print("[");
		for(int i = 0;i<i_s.length;i++){
			if(i<i_s.length-1)
				System.out.print(i_s[i]+",");
			else
				System.out.print(i_s[i]+"]");
		}
	}
}

/**
 * 汽車類對汽車資料的封裝
 */
class Vehicle{
	private String name; //車名
	private String xh;  //型號
	private long mileage;  //公里數
	private String colour;  //顏色
	private String sC;  //生成地
	private boolean start;  //是否啟動
	private String date;
	
	//預設構造值
	Vehicle(){
		Date date = new Date();
		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm");
		String dateString = formatter.format(date);
		this.start = false;
		this.mileage = 0;
		this.sC = "北京";
		this.colour = "黑色";
		this.date = dateString;
	}
	public String getName() {
		return name;
	}

	public String getXh() {
		return xh;
	}

	public long getMileage() {
		return mileage;
	}

	public String getColour() {
		return colour;
	}

	public String getsC() {
		return sC;
	}
	
	public String getDate(){
		return date;
	}

	public boolean isStart() {
		return start;
	}

	public void setName(String name) {
		this.name = name;
	}

	public void setXh(String xh) {
		this.xh = xh;
	}

	public void setMileage(long mileage) {
		this.mileage = mileage;
	}

	public void setColour(String colour) {
		this.colour = colour;
	}

	public void setsC(String sC) {
		this.sC = sC;
	}

	public void setStart(boolean start) {
		this.start = start;
	}
	
	public void setDate(String date) {
		this.date = date;
	}
}

執行結果:
[123,517,570,62,896,79,878,273,671,772]
北京汽車,BQ-001,0,紅色,北京,false,2018-06-06 12:21

描述事物的特性:
1,屬性。2,方法(c語言的體現)
所以在操作的時候,只要明確上面兩點就可以即可。

物件:其實就是該類事物存在實在的個體。
類和物件的關係?
類-->事物的描述(物件的體現形式)
物件-->該類事物的例項。java中通過new來建立的。
例如:Vehicle v = new Vehicle();
類中常見的體現是提供私有的屬性,共有的方法,提供外界訪問。
以上權當個人看法,如有問題,請您聯絡。