㈠ java中表示各個類繼承關系的這種圖,叫什麼圖啊
統稱UML(統一模型語言),專屬名稱叫類圖
㈡ Java類的繼承
一個類不能直接繼承多個類,java是單繼承語言。比如說這樣:class A extends B,C 不能這樣寫,因為java不支持多繼承。但是可以像下面這樣實現繼承多個類:class A extends B,class C extends A,這樣C就同時繼承了B和A兩個類了。
㈢ 關於JAVA異常類繼承出現的問題,如下圖片
需要在try裡面寫一句或含有一句拋出自定義異常的代碼。
比如:
try{
thrownew錯誤類();//必須有直接拋出或者有方法中拋出。
}catch(錯誤類e){//有拋出才有捕獲
}
㈣ java關於類的繼承
父類的非private屬性都可以理解為子類的屬性,所以任何修改非父類私有的屬性都會引起變化的。
㈤ 用java繼承編寫3個類,要求看下圖
我將程序分為了兩個文件,一個文件存放Student類、Freshman類(大一學生)和,Sophomore類(大二學生),另一個類存放主調程序類Exos11,具體代碼如下所示,首先是學生類:
classStudent
{
publicStringname;
Student(Stringname)
{
this.name=name;
}
publicvoidlearnMarxism()
{
System.out.println(this.name+"learnMarxism");
}
}
classFreshmanextendsStudent
{
Freshman(Stringname)
{
super(name);
}
publicvoidlearnJavaSE()
{
System.out.println(this.name+"learnJavaSE");
}
}
classSophomoreextendsStudent
{
Sophomore(Stringname)
{
super(name);
}
publicvoidlearnJavaEE()
{
System.out.println(this.name+"learnJavaEE");
}
}
然後是主調程序類:
publicclassExos11
{
publicvoidprintInfo()
{
Freshmanfr=newFreshman("Jack");
Sophomoreso=newSophomore("Jane");
fr.learnMarxism();
so.learnMarxism();
fr.learnJavaSE();
so.learnJavaEE();
}
publicstaticvoidmain(String[]args)
{
Exos11ex=newExos11();
ex.printInfo();
}
}
以上就是我的答案,如有問題,歡迎追問。
㈥ eclipse java中如何繼承一個類
繼承一個類用關鍵字 extends 就行了 ,
舉個例子: 類A繼承類B 那麼java代碼就是:
publicclassAextendsB{
}
或者你新建類的時候:
file -- new -- class 在彈出框中可以直接輸入要繼承的父類的名字如下圖:
㈦ java 中我創建了一個類繼承了JPanel,重寫了paint方法,用畫筆g畫了一張圖片作為背景。
你不要重寫 paint 方法,你完全可以直接使用 swing 裡面的組件,在 JPanel 中放入很多個組件,包括圖,Label 等。
給你找了一個文章,可以解決你的問題:
http://stackoverflow.com/questions/9816403/how-to-set-jframe-or-jpanel-background-image-in-eclipse-helios
---------------------------------------------------------------
如果滿意,請採納。
㈧ JAVA中什麼是繼承
繼承在本職上是特殊一般的關系,即常說的is-a關系。子類繼承父類,表明子類是一種特殊的父類,並且具有父類所不具有的 一些屬性或方法。
1.Java繼承的語法格式:
Java繼承的關鍵字是:extends
public class 子類名 extends 父類名{...}
如: public class UNStudent extends Student {...} 註:1.子類又稱超類,拓展類 ;父類又稱基類。
2.Java中類的繼承只能是單繼承(單根繼承),即一個類只能繼承一個父類,但是一個類可以由多個類來繼承它。
3.Java會給每一個沒有設置父類的類,自動添加一個父類就是Object 。
(8)java類繼承圖擴展閱讀:
一、子類繼承父類的結果
1.子類繼承父類後,繼承到了父類所有的屬性和方法。註:是所有。
2.子類可調用的方法也要看情況而定:
子類和父類在同一個包下時 「子類和子類的對象」可以調用父類的默認的,受保護的,公有的屬性以及方法。
子類和父類在不同的包下時,在子類中可以調用受保護的,公有的屬性以及方法,而子類的對象可以調用受保護的,公有的屬性以及方法。
二、方法的重寫
1.當子類和父類都有某種方法,而子類的方法更加要求細致,或者實現功能不同,就需要方法的重寫。
2.重寫條件
①必須要存在繼承關系;只有繼承之間的關系才能有方法的重寫
②方法的返回值類型,方法名,參數個數,參數類型,參數順序,必須要完全一致;
如:父類中方法 public void play (int n ; String s){方法體1...}
重寫後的子類方法public void play(int n ; String s){方法體2...}
3.子類重寫方法時的訪問修飾符可以大於或者等於父類方法的訪問修飾符。
4.重寫後的方法會被優先調用。
三、自動轉型
自動轉型的實現要求有繼承關系
格式如下:父類名 對象名 = new 子類構造方法;
如:Student stu = new UNStudent;
而強制轉型格式如下:子類名 對象名 = (子類名)父類對象名
如:UNStudent un = (Student)stu;
自動轉型可以拓寬方法的作用訪問域
在使用自動轉型後,子類自己定義的方法是不能在自動轉型後執行;
原因是因為Java的編譯機制,它會優先判斷父類中是否存在該方法,如果存在則通過編譯,如果不存在則報錯。
第二種自動轉型:轉型後只需要不同類的不同對象調用想吐的方法,很方便!
/**訪問修飾符 返回值數據類型 方法名(父類類型 參數名,...){
調用方法。
}
父類名 對象名 = new 子類名;
子類名 對象名 = new 子類名;
方法名(對象名);
*/
比如拿到駕駛證為A2的人,可以駕駛重型貨車,當然也可以駕駛大型貨車,中型貨車,小型貨車,小客車,小轎車,摩托車... 可以選擇第二種自動轉型的方法,便於調用同一個方法。
自動轉型好處:1.減少冗餘代碼;2.在方法設置參數時,擴大訪問范圍。
四、多態
多態是由方法重載,繼承,方法重寫,自動轉型等技術的組合。
五、為什麼需要繼承?
1.提高代碼的重用性。
2.提高程序的擴展性。
JAVA繼承總結
㈨ java某個類繼承了多個類,編譯時會
說明:這是一個新的系列,定下一個目標,只要不忙,每天都會進行一次更新
驗證
public class ClassD {
ClassB b;
public static void main(String[] args) {
System.out.println("xxx");
}
class ClassE {
ClassB b;
}
}
class ClassF {
ClassB b;
}
class ClassG {
ClassB b;
}
abstract class ClassH {
ClassB b;
}
interface ClassI {
}
上面的代碼中一共有6個類,ClassD ClassE ClassF ClassG ClassH ClassI
ClassD 正常類
ClassE classD的內部類
ClassF 只是寫在classD.java中的普通類
ClassG 只是寫在classD.java中的普通類
ClassH 抽象類
ClassI 介面
編譯之後,如圖:
可以證明的是
如果再一個java文件中有多個類,除去內部類,剩下的每個普通類都會生成一個class文件
生成完的class文件:
public class ClassD {
ClassB b;
public ClassD() {
}
public static void main(String[] args) {
System.out.println("xxx");
}
class ClassE {
ClassB b;
ClassE() {
}
}
}
class ClassF {
ClassB b;
ClassF() {
}
}
登錄後復制
class ClassG {
ClassB b;
ClassG() {
}
}
登錄後復制
abstract class ClassH {
ClassB b;
ClassH() {
}
}
登錄後復制
interface ClassI {
}
登錄後復制
總結
如果一個java文件中有多個類,除去內部類,剩下的每個普通類都會生成一個class文件
如上圖:一個java文件中有6個類生成了5個class文件,因為其中有個類是內部類,如果都是外部類的話,則會生成6個class文件