[TOC]
# 類
類是用來描述現實世界的事物的
事物:
```
屬性 事物的描述信息
行為 事物能做什么
```
```
成員變量 就是事物的屬性
成員方法 就是事物的行為
```
## 定義類其實就是定義類的成員(成員變量和成員方法)
* 成員變量 和以前定義變量是一樣的。
只不過位置發生了改變:在類中,方法外。
初始化值:不需要給初始化值。
* 成員方法 和以前定義方法是一樣的。
只不過把static去掉,面向對象進階在詳細講解static的作用。
# 面向對象
對象:是該類事物的具體體現
```
類 學生
對象 班長就是一個對象
```
# 如何使用
使用一個類,其實就是使用該類的成員。(成員變量和成員方法)
要想使用一個類的成員,就必須首先擁有該類的對象。
我們該如何擁有一個類的對象呢?創建對象。
## 例:學生類
```
public class Student {
String name;
int age;
public void study() {
System.out.println("好好學習,天天向上!");
}
public void eat() {
System.out.println("學習餓了,要吃飯");
}
}
```
## 創建對象
### 創建對象的格式:
```
類名 對象名 = new 類名();
```
### 對象訪問成員:
```
成員變量:對象名.成員變量
成員方法:對象名.成員方法
```
### 例:學生類的使用
```
public static void main(String[] args) {
Student s = new Student();
System.out.println("S:"+s);
System.out.println("姓名:"+s.name);
System.out.println("年齡:"+s.age);
System.out.println("---------------");
s.name = "小明";
s.age = 35;
System.out.println("姓名:"+s.name);
System.out.println("年齡:"+s.age);
System.out.println("---------------");
s.study();
s.eat();
}
```
> 姓名:null
年齡:0
> 姓名:小明
年齡:35
> 好好學習,天天向上!
學習餓了,要吃飯
### 例:手機類的創建和使用
```
public class Phone {
String brand;
int price;
String color;
public void call(String name){
System.out.println("給"+name+"打電話");
}
public void sendMessage(){
System.out.println("群發短信");
}
}
```
```
public class PhoneDemo {
public static void main(String[] args) {
//創建對象
Phone p=new Phone();
//輸出成員變量
System.out.println("品牌:"+p.brand);//null
System.out.println("價格:"+p.price);//0
System.out.println("顏色:"+p.color);//null
System.out.println("-------------------");
//給成員變量賦值
p.brand="華為Mate10";
p.price=3999;
p.color="黑色";
//再次輸出成員變量
System.out.println("品牌:"+p.brand);//華為Mate10
System.out.println("價格:"+p.price);//3999
System.out.println("顏色:"+p.color);//黑色
System.out.println("-------------------");
//調用成員方法
p.call("小明");
p.sendMessage();
}
}
```