關(guān)鍵詞:面向?qū)ο?/p>
java類(lèi)的定義
public class Dog{
String breed;
int age;
String color;
void barking(){
}
void hungry(){
}
void sleeping(){
}
}
一個(gè)類(lèi)可以包含以下類(lèi)型變量:
- 局部變量:在方法矫夷、構(gòu)造方法或者語(yǔ)句塊中定義的變量被稱(chēng)為局部變量漱受。變量聲明和初始化都是在方法中返顺,方法結(jié)束后肥隆,變量就會(huì)自動(dòng)銷(xiāo)毀恤左。
- 成員變量:成員變量是定義在類(lèi)中贴唇,方法體之外的變量搀绣。這種變量在創(chuàng)建對(duì)象的時(shí)候?qū)嵗3蓡T變量可以被類(lèi)中方法戳气、構(gòu)造方法和特定類(lèi)的語(yǔ)句塊訪(fǎng)問(wèn)链患。
- 類(lèi)變量:類(lèi)變量也聲明在類(lèi)中,方法體之外瓶您,但必須聲明為static類(lèi)型麻捻。
構(gòu)造方法
每個(gè)類(lèi)都有構(gòu)造方法。如果沒(méi)有顯式地為類(lèi)定義構(gòu)造方法呀袱,Java編譯器將會(huì)為該類(lèi)提供一個(gè)默認(rèn)構(gòu)造方法贸毕。
在創(chuàng)建一個(gè)對(duì)象的時(shí)候,至少要調(diào)用一個(gè)構(gòu)造方法夜赵。構(gòu)造方法的名稱(chēng)必須與類(lèi)同名明棍,一個(gè)類(lèi)可以有多個(gè)構(gòu)造方法。
public class Puppy{
int puppyAge;
public Puppy(String name){
// 這個(gè)構(gòu)造器僅有一個(gè)參數(shù):name
System.out.println("小狗的名字是 : " + name );
}
public void setAge( int age ){
puppyAge = age;
}
public int getAge( ){
System.out.println("小狗的年齡為 : " + puppyAge );
return puppyAge;
}
public static void main(String []args){
/* 創(chuàng)建對(duì)象 /
Puppy myPuppy = new Puppy( "tommy" );
/ 通過(guò)方法來(lái)設(shè)定age /
myPuppy.setAge( 2 );
/ 調(diào)用另一個(gè)方法獲取age /
myPuppy.getAge( );
/你也可以像下面這樣訪(fǎng)問(wèn)成員變量 */
System.out.println("變量值 : " + myPuppy.puppyAge );
}
}
輸出結(jié)果
* 小狗的名字是 : tommy 小狗的年齡為 : 2 變量值 : 2
import java.io.*;
public class Employee{
String name;
int age;
String designation;
double salary;
// Employee 類(lèi)的構(gòu)造器
public Employee(String name){
this.name = name;
}
// 設(shè)置age的值
public void empAge(int empAge){
age = empAge;
}
/* 設(shè)置designation的值/
public void empDesignation(String empDesig){
designation = empDesig;
}
/ 設(shè)置salary的值/
public void empSalary(double empSalary){
salary = empSalary;
}
/ 打印信息 */
public void printEmployee(){
System.out.println("名字:"+ name );
System.out.println("年齡:" + age );
System.out.println("職位:" + designation );
System.out.println("薪水:" + salary);
}
}
程序都是從main方法開(kāi)始執(zhí)行寇僧。為了能運(yùn)行這個(gè)程序击蹲,必須包含main方法并且創(chuàng)建一個(gè)實(shí)例對(duì)象。
public class EmployeeTest{
public static void main(String args[]){
/* 使用構(gòu)造器創(chuàng)建兩個(gè)對(duì)象 */
Employee empOne = new Employee("RUNOOB1");
Employee empTwo = new Employee("RUNOOB2");
// 調(diào)用這兩個(gè)對(duì)象的成員方法
empOne.empAge(26);
empOne.empDesignation("高級(jí)程序員");
empOne.empSalary(1000);
empOne.printEmployee();
empTwo.empAge(21);
empTwo.empDesignation("菜鳥(niǎo)程序員");
empTwo.empSalary(500);
empTwo.printEmployee();
}
}
結(jié)果
$ javac EmployeeTest.java
$ java EmployeeTest
名字:RUNOOB1
年齡:26
職位:高級(jí)程序員
薪水:1000.0
名字:RUNOOB2
年齡:21
職位:菜鳥(niǎo)程序員
薪水:500.0