㈠ java中,抽象類可以有構造方法嗎
當然可以,只是不能直接創建抽象類的實例對象而已
1、如果在父類中(這里就是你的抽象類)中顯示的寫了有參數的構造函數,在子類繼承是就必須寫一個構造函數來調用父類的構造函數
例子:
abstract
class
Person
{
//定義一個抽象類,必須被繼承
Person(int
i)
{
}
}
public
class
Student
extends
Person
{
Student()
{
super(int
i)://必須顯示的調用父類構造方法//super代表父類對象
}
}
2、如果父類中有沒有參數的構造函數,在子類中可以不顯示的寫父類的構造函數,Java會自動調用沒有參數的構造函數
例子:
abstract
class
Person
{
//定義一個抽象類,必須被繼承
Person()
{
//此構造函數也可以不寫,Java會默認添加一個沒有參數的構造函數
}
}
public
class
Student
extends
Person
{
Student()
{
//super();//可以不寫,Java會自己調用這個super()方法
}
}
㈡ java中抽象類的構造方法抽象么
抽象類和抽象方法什麼關系?抽象類中可能有抽象方法,也可能沒有抽象方法。那位說,就跟沒說一樣,那抽象類和抽象方法都叫抽象,他們必定有關系,那關系是什麼呢?如果一個類中有抽象方法,它必須得是抽象類。
㈢ JAVA中普通方法、抽象方法、構造方法等都有什麼不同和作用呢
舉例說明吧,學生是一個大類(在程序中就是class),其中的一個學生是一個對象也叫一個實體(在程序中就是我們new的一個對象),介面實際上是一個類,實現介面的類相當於是一個調用關系,抽象類也是一個類,但和介面不同,實現抽象類的類是一個繼承的關系,繼承只能繼承一個,好比只有一個父親,但是介面可以接很多個,好比usb插口,普通方法就是我們平時寫的void
int
string
等等的函數方法,如果是寫在類裡面,那麼其他地方調用需要先實例化一個對象(new一個對象)然後再按.調用出來,靜態方法就是前面加了static的方法,是使用公共內存空間的,所有對象都可以直接引用而不需要實例化一個對象再使用該方法。靜態塊的就是在類載入的時候就執行,而且是一個類在第一次被使用的時候會被載入執行(這東西不常用)。
㈣ java中,抽象類可以有構造方法嗎
抽象類可以有構造方法,只是不能直接創建抽象類的實例對象而已。
在繼承了抽象類的子類中通過super(參數列表)調用抽象類中的構造方法
示例代碼如下: