package com.aaa.zxf.ajax.test;
/**
* 一、java中的函數?
*
* 1.【修飾符】 返回值類型 函數名(參數類型 參數名,參數類型 參數名,........) {
* 函數體
* }
*
* 2. 無參數無返回值的函數
* 定義: 【修飾符】 void 函數名() {
* 函數體
* }
*
* 為什么需要函數:函數能實現某些功能
* 函數的調用(非static) : 1 創建對象
* 2 對象名.函數名();
*
*
* 3. 有參數 無返回值的函數
* 定義: 【修飾符】 void 函數名(參數類型 參數名,參數類型 參數名,........){
* 函數體/方法體
* }
參數和返回值 都是 數據傳遞的一種方式。。。
*
* 二 、java中的重載?
*
* 三、 構造函數?
* 1. 在一個類中 默認會生成一個公共無參數的構造函數(也就是說 你不寫 默認會幫你加上)
*
* 2. 我們一旦自己寫了構造函數 那么公共無參數的構造函數就不會自動生成了
* 所以 我們一旦添加公共有參數的構造函數 一定要確保無參數構造函數的存在
* (OCJP)
*
*
* */
public class JavaFunction {
public static void main(String[] args) {
/*
函數的參數和返回值的使用 取決於實際需求。
*/
int hah = add(45, 55);
System.out.println(hah);
// Haha() 構造函數。
Haha haha = new Haha();
}
/**
* 構造函數
*/
static class Haha{
public static void main(String[] args) {
int age ;
String name;
}
//自己寫了構造函數 那么公共無參數的構造函數就不會自動生成了
public Haha(){
}
// 自己寫構造函數的作用(通過構造函數傳參)
public Haha(int age,String name){
System.out.println("創建帶參的構造函數 , 需要手動添加空的構造函數");
}
}
/**
*1. 無參數無返回值的函數
*/
public void haha(){
System.out.println(66);
}
/**
* 2.有參數 無返回值的函數
*/
static void add(int a, int b){
// 有返回值的方法 return 的內容 要和返回值類型匹配
int result = a+b;
// 以 return 語句執行后的代碼不執行)
}
/**
* 3.有返回值沒有參數
*/
int jian(){
// 函數體。
return 0;
}
/**
有參數有返回值的方法
*/
double getDifference(int a, int b){
double result = a - b;
return result;
}
/**
* 在同一類中,函數名相同,參數列表(參數的個數,參數的類型,類型的順序)不同 此時就是函數的重載
*/
int add(int a){
return a;
}
/**
* 重載和 方法的返回值類型沒有關系 只和參數列表有關
* 兩個 add 返回值類型不同
* 報錯 :已經在類中定義了add 方法
*
*
* @return
*/
int add(){
return 0;
}
/**
* 假設 編譯不報錯 請問,你在主函數中調用 add 方法
* 問題來了 你調用的是 int ,還是 void?
* 所以 Java中 不能根據返回值類型進行重載。
*/
void add(){
}
}