星期二的收獲
上午:1、static的基本概念和屬性:①、static被稱為靜態,可以用來修飾類的屬性或者方法。
②、如果類的某個屬性,不管創建多少個對象,屬性的存儲空間只有唯一的一個,那麽這個屬性就應該用static修飾,被static修飾的屬性被稱為靜態屬性。(靜態屬性是類的所有對象共享的,即不管創建了多少個對象,靜態屬性在內存中只有一個。)
2、static的方法:static修飾的方法是綁定的,因此被static修飾的方法稱為靜態方法;static方法可以使用對象調用,也可以直接用類名調用,建議用類名直接調用。
3、static塊
4、final的屬性:①定義就必須直接賦值或者在構造方法中進行賦值,並且後期都不能修改;
②final的使用方法:定義必須有實現代碼,並且子類裏不可被覆蓋;
③final可修飾屬性、局部變量但值不能改,final不能被繼承。
5、變量和常量:①在類中聲明的變量或常量叫屬性
②在方法中聲明的變量叫局部變量
6、繼承的概念、特點、作用:①繼承是指一個類的定義可以基於另外一個已經存在的類,即子類基於父類,從而實現父類代碼的重用,子類能吸收已有類的數據屬性和行為,並能擴展新的能力;
②書寫格式 class + 子類名 + extends + 父類名;
③子類對象可以直接調用父類的屬性和方法。
7、super的用途:①super語句只能出現在子類構造方法體的第一行;
②對於無參的構造方法,子類構造方法中的super();可寫可不寫;
③對於有參的構造方法,子類構造方法中的super形式為super(屬性值)。
8、this:在一個類的內部,也可以使用this代表自身類的對象(this關鍵字必須放在非靜態方法裏面)
9、方法覆蓋的定義和原則:①子類可以重寫父類中某一個方法,稱為方法覆蓋;
②原則:⑴同名
⑵同參
⑶同返回值
⑷權限不能縮小
下午的練習
1、屬性的初始化值
package com.chainsoft.test2.AM;
public class Test {
static int a ;
static double b ;
static float c ;
static long e ;
static short f;
static boolean g;
static byte h ;
static char i ;
public static void shuju(){
System.out.println("int的默認值為:"+a);
System.out.println("double的默認值為:"+b);
System.out.println("float的默認值為:"+c);
System.out.println("long的默認值為:"+e);
System.out.println("short的默認值為:"+f);
System.out.println("boolean的默認值為:"+g);
System.out.println("byte的默認值為:"+h);
System.out.println("char的默認值為:"+i);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Test.shuju();
}
}
2、畫圈圈
package com.chainsoft.test2.AM;
public class Yuanquan {
public Yuanquan(){ //構造方法
System.out.println("以原點為圓心為半徑");
}
void farther(int x ,int y ) //方法
{
System.out.println("以原點為圓心"+x+"為半徑");
}
class son extends Yuanquan //設置一個子類繼承Yuanquan這個父類
{
son()
{
super(); //只能出現在子類構造體方法的第一行
}
}
void son(int x,int y) //在子類中重建一個方法來覆蓋父類繼承的方法
{
double sum = 6.28 * x;
System.out.println("以原點為圓心"+x+"為半徑的圓的周長"+sum);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Yuanquan s = new Yuanquan();
s.farther(3,3); //賦值對象
s.son(3,3);
}
}
星期二的收獲