方法
1.方法定義
方法是用來實現類是行爲,相當於數學中的函數
定義:
返回值類型 方法名 (參數){
方法主體
}
publicclass hasStaticMethod {
//定義一個靜態方法
publicstaticvoid callMe() {
System.out.println("This is a static method");
}
//定義一個靜態變量
privatestaticintsa;
private intia;
staticvoid statMethod(){
int i =0;
sa=10;
otherstat();
//ia=20;錯誤
//insMethod();錯誤
}
staticvoid otherstat(){
}
void insMethod(){
int i =0;
sa =15;
ia=30;
statMethod();
}
publicstaticvoid main(String[] args){
hasStaticMethod.callMe();
hasStaticMethodhs= new hasStaticMethod();
hs.callMe();
}
}
2.方法的使用
方法名 xxx = new 方法名();
/**
*賬戶類
*@author Administrator
*
*/
publicclass Account {
longid;//帳號
Stringpassword;//密碼
Stringname;//姓名
StringpersonId;//身份證
Stringemail;//郵箱
doublebalance;//餘額
public Account(double b){
balance=b;
}
//存款方法
publicdouble deposit(double m) {
returnbalance = balance+m;
}
//取款方法
publicdouble withdraw(double s) {
returnbalance = balance-s;
}
publicstaticvoid main(String[] args){
Account account=new Account(10000);
double s=account.deposit(6000);
System.out.println("存款後的金額是:"+s);
double e = account.withdraw(5000);
System.out.println("取款後的金額是:"+e);
}
}
3.簡單的計算器類
publicclass Calc {
floatnum1, num2;
//無參數的構造函數 調用了帶參數的構造函數
public Calc(){
this(1, 2);//寫在第一句
System.out.println("3.無參數的構造函數!");
}
//帶參數的構造函數
public Calc(float n1, float n2) {
System.out.println("1.帶參數的構造函數!");
num1 = n1;
num2 = n2;
System.out.println("2.給類的兩個成員變量賦值");
}
publicfloat Add() {
returnnum1 + num2;
}
publicfloat Cut() {
returnnum1 - num2;
}
publicfloat Ride() {
if (num2 != 0)
returnnum1 * num2;
else
return 0;
}
publicfloat Divide() {
returnnum1 / num2;
}
publicstaticvoid main(String[] args){
Calccalc = new Calc();
float add = calc.Add();
float cut = calc.Cut();
float ride = calc.Ride();
float divde =calc.Divide();
System.out.println("加法:" + add);
System.out.println("減法:" + cut);
System.out.println("乘法:" + ride);
System.out.println("除法:" + divde);
}
}
4.計算器類的調用
/**
*計算器管理類 用來管理計算器對象
*@author Administrator
*
*/
publicclass CalcManger {
static Calc calc;//自定義類的變量聲明
public CalcManger(){
System.out.println("在計算器管理類中初始化計算器類");
calc = new Calc();
}
publicstaticvoid show(){
float s = calc.Add();//調用加法函數
System.out.println("計算器加的結果是:"+s);
float d = calc.Cut();//調用減法函數
System.out.println("計算器減的結果是:"+d);
float fs = calc.Ride();//調用乘法函數
System.out.println("計算器乘的結果是:"+fs);
float f = calc.Divide();//調用除法函數
System.out.println("計算器除的結果是:"+f);
}
publicstaticvoid main(String[] args){
CalcMangercManger=new CalcManger();
CalcManger.show();
cManger.toString();
}
}
5.變量的定義
publicstaticvoid checkInt1(int i) {
i=200;//這樣是可以的 不會編譯出錯
//do something
}
/*
publicstatic void checkInt2(final int i) {
i=200;//這樣是不可以的 會編譯出錯
//dosomething
}*/
6.構造函數
publicclass Mytime {
//定義成員變量
inthour,minute,second;
//構造函數
public Mytime(int n1,int n2, int n3){
hour=n1;
minute=n2;
second=n3;
}
}
//有構造函數的類的實例化
Mytime mytime = new Mytime(6, 25, 40);
6.有參數的構造函數和無參數的構造函數
publicclass Rectangle {
//類的無參數的構造函數
public Rectangle(){
System.out.println("這是矩形類的無參數構造函數!");
}
public Rectangle(float len,float w){
this.len =len;
this.width=w;
System.out.println("這是矩形類的帶參數構造函數!");
}
}