繼承代碼java,如何使用繼承碼

寫一個(gè)最簡(jiǎn)單的JAVA繼承代碼??謝謝

可運(yùn)行的:

創(chuàng)新互聯(lián)是一家專業(yè)提供晉安企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、HTML5、小程序制作等業(yè)務(wù)。10年已為晉安眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。

import java.awt.*;

import java.awt.event.*;

public class BackJFrame extends Frame{

public BackJFrame(){

super("臺(tái)球");

setSize(300,300);

setBackground(Color.cyan); //背景

setVisible(true);

addWindowListener(new WindowAdapter()

{

public void windowClosing (WindowEvent e)

{System.exit(0);}

} );

}

public static void main(String args[]){

new BackJFrame();

}

}

Java中是如何通過繼承實(shí)現(xiàn)代碼重用的?

措施一:改寫類的實(shí)例方法

通過類繼承實(shí)現(xiàn)代碼重用不是精確的代碼重用技術(shù),因此它并不是最理想的代碼重用機(jī)制。換句話說,如果不繼承整個(gè)類的所有方法和數(shù)據(jù)成員,我們無法重用該類里面的單個(gè)方法。繼承總是帶來一些多余的方法和數(shù)據(jù)成員,它們總是使得重用類里面某個(gè)方法的代碼復(fù)雜化。另外,派生類對(duì)父類的依賴關(guān)系也使得代碼進(jìn)一步復(fù)雜化:對(duì)父類的改動(dòng)可能影響子類;修改父類或者子類中的任意一個(gè)類時(shí),我們很難記得哪一個(gè)方法被子類覆蓋、哪一個(gè)方法沒有被子類覆蓋;最后,子類中的覆蓋方法是否要調(diào)用父類中的對(duì)應(yīng)方法有時(shí)并不顯而易見。

任何方法,只要它執(zhí)行的是某個(gè)單一概念的任務(wù),就其本身而言,它就應(yīng)該是首選的可重用代碼。為了重用這種代碼,我們必須回歸到面向過程的編程模式,把類的實(shí)例方法移出成為全局性的過程。為了提高這種過程的可重用性,過程代碼應(yīng)該象靜態(tài)工具方法一樣編寫:它只能使用自己的輸入?yún)?shù),只能調(diào)用其他全局性的過程,不能使用任何非局部的變量。這種對(duì)外部依賴關(guān)系的限制簡(jiǎn)化了過程的應(yīng)用,使得過程能夠方便地用于任何地方。當(dāng)然,由于這種組織方式總是使得代碼具有更清晰的結(jié)構(gòu),即使是不考慮重用性的代碼也同樣能夠從中獲益。

java編寫動(dòng)物世界的繼承關(guān)系代碼

我寫了一個(gè),內(nèi)容比較簡(jiǎn)單的。代碼如下:public class AnimalTest {

Animal animal;

public void eat(Animal animal){

animal.eat();

}

public void walk(Animal animal){

animal.walk();

}

public static void main(String args[]){

Animal animal=new Animal("animal");

Wolf w=new Wolf("wolf");

Goat g=new Goat("goat");

AnimalTest at=new AnimalTest();

at.eat(animal);

at.eat(w);

at.eat(g);

at.walk(animal);

at.walk(w);

at.walk(g);

}

}

class Animal {

String name;

public Animal(String name){

this.name=name;

}

public Animal(){}

public void setName(String name){

this.name=name;

}

public String getName(){

return name;

}

public void eat(){

System.out.println("animal eat");

}

public void walk(){

System.out.println("animal walk");

}

public String toString(){

return name;

}

}class Wolf extends Animal {

public Wolf(String name){

super(name);

}

public Wolf(){}

public void eat(){

System.out.println("wolf eat meat");

}

public void walk(){

System.out.println("wolf walk");

}

public String toString(){

return name;

}

}class Goat extends Animal {

public Goat(String name){

super(name);

}

public Goat(){}

public void eat(){

System.out.println("goat eat grass");

}

public void walk(){

System.out.println("goat walk");

}

public String toString(){

return name;

}

}

JAVA繼承問題 求代碼

第一個(gè):

public?class?Yaojing?{

protected?String?name;

protected?int?age;

protected?String?gender;

public?void?showBasicInfo()?{

System.out.println(toString());

}

public?void?eatTangSeng()?{

System.out.println("吃飽了");

}

@Override

public?String?toString()?{

return?"Yaojing?[name="?+?name?+?",?age="?+?age?+?",?gender="?+?gender?+?"]";

}

}

第二個(gè)類

public?class?Zhizhujing?extends?Yaojing?{

public?void?buildNet(){

System.out.println("蜘蛛在織網(wǎng)");

}

}

第三個(gè)類

public?class?Baigujing?extends?Yaojing?{

public?void?beBeauty(){

System.out.println("白骨精");

}

}

java程序繼承

package?extend;

/**

*?圓類

*?@author?楓雅

*?2019年3月21日

*/

public?class?Circle?{

private?double?r;

public?final?static?double?PI?=?3.14;

public?Circle(double?r)?{

this.r?=?r;

}

public?double?Circumference(double?r)?{

return?2*PI*r;

}

public?double?Area(double?r)?{

return?PI*r*r;

}

}

package?extend;

/**

*?圓柱類,繼承自圓類

*?@author?楓雅

*?2019年3月21日

*/

public?class?Cylinder?extends?Circle{

private?double?h;

public?Cylinder(double?r,?double?h)?{

super(r);

this.h?=?h;

}

public?double?CeArea(double?r,?double?h)?{

return?super.Circumference(r)*h;

}

public?double?Volume(double?r,?double?h)?{

return?super.Area(r)*h;

}

}

package?extend;

/**

*?圓錐類,繼承自圓柱類

*?@author?楓雅

*?2019年3月21日

*/

public?class?Cone?extends?Cylinder{

public?Cone(double?r,?double?h)?{

super(r,?h);

}

public?double?CeArea(double?r,?double?h)?{

return?super.CeArea(r,?h)/2;

}

public?double?Volume(double?r,?double?h)?{

return?super.Volume(r,?h)/3;

}

}

package?extend;

/**

*?測(cè)試類

*?@author?楓雅

*?2019年3月21日

*/

public?class?Test?{

public?static?void?main(String[]?args)?{

double?r?=?3;

double?h?=?2;

Circle?circle?=?new?Circle(r);

System.out.println("半徑為:"?+?r?+?"?圓的周長(zhǎng)為:"?+?circle.Circumference(r));

System.out.println("半徑為:"?+?r?+?"?圓的面積為:"?+?circle.Area(r));

Cylinder?cylinder?=?new?Cylinder(3,?2);

System.out.println("底部半徑為:"?+?r?+?",高為:"?+?h?+?"?圓柱的側(cè)面積為:"?+?cylinder.CeArea(r,?h));

System.out.println("底部半徑為:"?+?r?+?",高為:"?+?h?+?"?圓柱的體積為:"?+?cylinder.Volume(r,?h));

Cone?cone?=?new?Cone(3,?2);

System.out.println("底部半徑為:"?+?r?+?",高為:"?+?h?+?"?圓錐的側(cè)面積為:"?+?cone.CeArea(r,?h));

System.out.println("底部半徑為:"?+?r?+?",高為:"?+?h?+?"?圓錐的體積為:"?+?cone.Volume(r,?h));

}

}

分享文章:繼承代碼java,如何使用繼承碼
轉(zhuǎn)載來源:http://www.muchs.cn/article30/hsssso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)域名注冊(cè)、面包屑導(dǎo)航、微信公眾號(hào)、響應(yīng)式網(wǎng)站、關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司