1. 程式人生 > >java 類 和構造方法

java 類 和構造方法

類:類是具有相同屬性和行為的一組物件的集合與抽象。
物件:物件是一個具體存在的實體,他是類的例項化



[修飾符] class 類名[繼承][介面]{
0—n個屬性
0—n個方法


public class Pereson中(Person是類名)
//屬性
public int armLength;
public String name;
public void run(){
System.out.println("走呀走");
}




物件的建立和使用
類名 物件名 = new 構造方法();
eg:Student s= new Student();


public static void main(String[] args){ 
Person p= new Person();
p.name="笑話;
p.armLength;
p.run();


方法:[修飾符](public、static、final….) 返回值型別 方法名(引數列表)
eg public class Home{
public void practice(){
 System.out.println("帶public修飾符的方法");
帶static的是靜態方法有以下呼叫方法
1類掉用
2物件呼叫
注意:(靜態方法中不能直接呼叫普通方法,在靜態方法中如果呼叫普通方法需要先例項化物件,通過物件呼叫)
方法前面沒有使用static修飾,該方法是普通方法
普通方法中可以使用物件,也可以使用,this呼叫,還可以直接呼叫(預設預設this)
eg:public class Test {
public void practice(){
System.out.println("方法一");
}





public void practice(){
System.out.println("方法二");
Test t=new Test();
t.practice();//1通過物件呼叫
this.practice();//2this就是當前物件
System.out.println("this:"+this);
practice();//3缺省了this關鍵字
}
形參:(形式引數)不是真實的
實參:(實際引數)是真實值
eg:public class My{
//a,b就是形式引數(形參)
public void getMax(int a,int b){
if(a>b){
System.out.println("最大值是:"+a);
}else{
System.out.println("最大值是:"+b);
}
}




public static void main(String[] args) {
My m=new My();
m.getMax(10, 20);//10,20就是實際引數(實參)
}
}


方法過載:在同一個類中定義多個方法,方法名可以相同,引數列表不同(型別不同、個數不同、順序不同).
public void sum(int a,int b){
System.out.println(a+b);
}
public void sum(int a,int b,int c){
System.out.println(a+b+c);
}
public void sum(float a,int b){
System.out.println(a+b);
}
順序不同
public void sum(float a,int b){
System.out.println(a+b);
}


注意:1修飾符不同  不是過載
      2返回值不同  不是過載
 
構造方法是一個用來初始化一個物件
public class Test {
public static void main(String[] args) {
Test t=new Test();//Test()是構造方法 




成員變數又被分為兩種:類屬性和例項(物件)屬性。


SimpleDateFormat:
DateFormat的子類 在日期處理中使用最多


public class Test {
public static void main(String[] args) {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日mm分ss秒");
String date=sdf.format(new Date());
System.out.println(date);
}
}