package?testseven;
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供平武網(wǎng)站建設(shè)、平武做網(wǎng)站、平武網(wǎng)站設(shè)計、平武網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、平武企業(yè)網(wǎng)站模板建站服務(wù),10余年平武做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
class?Super{???//定義一個類
String??s="Super";
public?void?reSuper(){
System.out.println("show?Super?is:"+s);
}
}
public?class?succeed?extends?Super{???//繼承Super類
//String??s="succeed";???//可以取消注釋查看結(jié)果
public?void?reSuper(){???//??這個取消注釋也可以嘗試,會直接執(zhí)行Super的reSuper
System.out.println("show?resuper?is:"+s);
System.out.println("show?this.s="+this.s);?//This?是直接訪問本類中的內(nèi)容
System.out.println("show?super.s="+super.s);//super?是由子類訪問父類中的內(nèi)容
}//super.父類屬性,?如果屬性沒有被復(fù)寫,則也可以不寫super????this.本類屬性????
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
String??s="new?main";
succeed?suc?=?new?succeed();
suc.reSuper();
System.out.println("show?mian?is:"+s);
}
}
public class JIhe {
private String color;
private String dateCreated;
private String filled;
public String getColor() {
return color;
}
public String getDateCreated() {
return dateCreated;
}
public String getFilled() {
return filled;
}
public void setColor(String color) {
this.color = color;
}
public void setFilled(String filled) {
this.filled = filled;
}
@Override
public String toString() {
return "Color:" + this.color +" filled:" + this.filled + "detaCreated:" + dateCreated;
}
}
------------------------------------------------------------------------------------------------------------
public class Circle extends JIhe {
private double radius;
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
public double getArea() {
return 3.14 * this.radius * this.radius;
}
public double getPerimeter() {
return 2 * 3.14 * this.radius;
}
public double getDiameter() {
return 2 * this.radius;
}
}
-----------------------------------------------------------------------------------------------------
public class Rectangle extends JIhe {
private double width;
private double height;
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public double getArea(){
return this.width * this.height;
}
public double getPerimeter(){
return this.width * 2 + this.height * 2;
}
}
——————————————————————————————————————
public class Test {
public static void main(String[] args){
Circle circle = new Circle();
circle.setRadius(1.0);
System.out.println(circle.getArea());
System.out.println(circle.getColor());
System.out.println(circle.getDateCreated());
System.out.println(circle.getDiameter());
System.out.println(circle.getFilled());
System.out.println(circle.getPerimeter());
System.out.println(circle.getRadius());
Rectangle r = new Rectangle();
r.setHeight(2.0);
r.setWidth(4.0);
System.out.println(r.getArea());
System.out.println(r.getColor());
System.out.println(r.getDateCreated());
System.out.println(r.getFilled());
System.out.println(r.getHeight());
System.out.println(r.getPerimeter());
System.out.println(r.getWidth());
}
}
在 java中,用一個類同時繼承一個類和實(shí)現(xiàn)一個接口代碼如下:
class?Pigeon??extends?Bird?implements??Flyanimal?
{ ?? public?void?fly()
{
System.out.println("pigeon??can?fly");
}
public?void?egg()
{
System.out.println("pigeon??can?lay??eggs?");
}
}
類繼承:繼承是面向?qū)ο笞铒@著的一個特性。繼承是從已有的類中派生出新的類,新的類能吸收已有類的數(shù)據(jù)屬性和行為,并能擴(kuò)展新的能力。Java繼承是使用已存在的類的定義作為基礎(chǔ)建立新類的技術(shù),新類的定義可以增加新的數(shù)據(jù)或新的功能,也可以用父類的功能,但不能選擇性地繼承父類。
接口實(shí)現(xiàn):接口實(shí)現(xiàn)在java中是一種特殊繼承方式,接口在定義后,就可以在類中實(shí)現(xiàn)該接口,在類中實(shí)現(xiàn)接口可以使用關(guān)鍵字implement。
創(chuàng)建父類:
class?Bird?{
int?legnum?=?2;?????void?egg()?{????};}
定義接口:
interface?Flyanimal
{ ?
void?fly();
}
通過extends進(jìn)行繼承。
語法:修飾符class子類名extends父類名{.....}
舉例:
public?class?Parent{//定義父類
}
public?class?Son?extends?Parent{//通過extends,son類繼承了父類Parent
}
補(bǔ)充:
(1)繼承就是在現(xiàn)有類的基礎(chǔ)上構(gòu)建親的類。
(2)當(dāng)一個類繼承一個現(xiàn)有類后,可以對被繼承類中的屬性和方法進(jìn)行重用。
(3)在Java中,一個類只能有一個父類,不支持多繼承。