類的方法
無參方法
文法:
public 傳回值類型 方法名(參數清單){
//方法的主體
}
敲一敲:無傳回值方法
public void sayHi(){
System.out.println("你好");
}
沒有傳回值傳回值類型為 void ,上例中是無傳回值。如果方法中有傳回值,方法中必須使用關鍵之 return 傳回該值,傳回值類型為該傳回值的類型。
敲一敲:有傳回值方法
public class Student {
String name;
int age;
/**
* 擷取年齡
* @return
*/
public int getAge() {
return age;
}
/**
* 擷取名字
* @return
*/
public String getName() {
return name;
}
}
敲一敲:調用有傳回值方法
public class Main {
public static void main(String[] args) {
Student stu=new Student();
stu.age=10;
stu.name="張三";
//調用有參方法1 直接接收傳回值
int age=stu.getAge();
System.out.println("年齡:"+age);
//調用有參方法2 有傳回的方法作為一個元素使用
String hello="大家好,我是:"+stu.getName();
System.out.println(hello);
System.out.println(stu.getName());
}
}
有參方法
定義帶參方法的文法:
<通路修飾符> 傳回類型 <方法名>(<形式參數清單>){
方法的主體
}
參數允許設定多個,聲明時使用的參數叫做形參,調用時實際傳入的值叫做實參。
調用方法,參數的參數要與參數清單一一對應。
敲一敲:帶參方法的定義和調用
public class DemoMethod {
public void sayFriend(String name1,int num) {
System.out.println(name1+" 有 "+num+" 個好朋友!");
}
public static void main(String[] args) {
DemoMethod method=new DemoMethod();
String name="張三";//實參
int num=2;
method.sayFriend(name, num);//注意順序
}
}
數組和對象也可以作為參數
敲一敲:
public class DemoParam {
/**
* 模拟Arrays.toString()方法,列印數組
* @param names
*/
public void showArray(String[] names) {
System.out.print("[");
for (int i = 0; i < names.length; i++) {
System.out.print(names[i]);
if (i<names.length-1) {
System.out.print(",");
}
}
System.out.println("]");
System.out.println();
}
public static void main(String[] args) {
String[] names= {"張三","李四"};
DemoParam demo=new DemoParam();
demo.showArray(names);
}
}
成員變量和局部變量
變量聲明的位置不同,作用域也不同,作用域可以确定變量可以在哪些區域通路。直接聲明在類中的是成員變量,聲明在方法中的是局部變量。
敲一敲:感受局部變量和成員變量
public class Student {
String name="李四";//成員變量
int age=29;//成員變量
/**
* 擷取年齡
* @return
*/
public int getAge() {
int age=10;//局部變量
return age;
}
/**
* 擷取名字
* @return
*/
public String getName() {
int age=20;//局部變量
return name;
}
public static void main(String[] args) {
Student stu=new Student();
System.out.println("年齡:"+stu.getAge());//10
System.out.println("名字:"+stu.getName());
}
}
成員變量在所有執行個體方法中都可以通路
局部變量隻能在目前聲明的方法中使用,多個方法可以聲明相同名字的局部變量
局部變量和成員變量名字相同時,目前方法中優先使用局部變量
java 會給成員變量一個初始值,不會給局部變量初始值
包
JDK中有大量的類,其中也不乏一些同名的類,那JDK是怎麼區分這些同名的類的?使用包可以解決這個問題。
package 包名;//聲明包
import 包名;//導入包
public class 類名{
成員變量
方法
……
}
聲明一個類所在的名使用 package 關鍵字,package 一定要再所有語句中第一行,且隻有一個。
使用某個包中的類使用 import 關鍵字,可以寫多個,寫在 package 的下面,聲明類的上面。
導入包時可以使用完全限定名,如
import java.util.Date;
,或者包中的所有類如
import java.util.*;
包和目錄的關系:建立包 com.jikedaquan 相當于建立了目錄結構 comjikedaquan
包命名規範:包名由小寫字母組成,不能以圓點開頭或結尾。包名之前最好加上唯一的額字首,通常使用組織倒置的網絡域名如
www.jikedaquan.com
的包名為
com.jikedaquan
,包名後續部分依不同機構内部的規範不同而不同。
另請搜尋 在 eclipse 中建立包,本文章不在細述。
搜尋關注公衆号「享智同行」,第一時間擷取技術幹貨