色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

JAVA的繼承封裝和多態

李明濤1年前6瀏覽0評論

JAVA是一個面向對象的編程語言,其中繼承、封裝和多態是面向對象編程的三個基本特征。在JAVA中,繼承是指從已有類中派生出新的類,新類繼承了已有類的屬性和方法,并且可以在此基礎上進行擴展或修改。

public class Animal {
String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println(name + " is eating.");
}
}
public class Dog extends Animal {
public Dog(String name) {
super(name);
}
public void bark() {
System.out.println(name + " is barking.");
}
}

在上面的代碼中,Dog類繼承了Animal類,并擴展了一個新的方法bark。在Dog類中,我們可以使用所有Animal類中定義的屬性和方法,同時也可以在此基礎上進行擴展或修改。

封裝是指隱藏對象的實現細節,僅暴露出公共接口。在JAVA中,封裝通過訪問修飾符來實現。訪問修飾符有public、protected、default和private四種,分別代表公共、保護、默認和私有,用來控制類、屬性和方法的可見性。

public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}

在上面的代碼中,name和age屬性被聲明為private,外部無法直接訪問。通過在類中提供public的get方法,外部可以通過這些方法來訪問屬性的值,而不需要知道實現細節。

多態是指一個對象可以根據不同的上下文表現出不同的行為。在JAVA中,多態通過繼承和接口實現。當一個對象具備多個形態時,我們可以使用其中任何一個形態。

public interface Shape {
void draw();
}
public class Circle implements Shape {
@Override
public void draw() {
System.out.println("Drawing circle.");
}
}
public class Rectangle implements Shape {
@Override
public void draw() {
System.out.println("Drawing rectangle.");
}
}
public class Main {
public static void main(String[] args) {
Shape shape1 = new Circle();
Shape shape2 = new Rectangle();
shape1.draw();
shape2.draw();
}
}

在上面的代碼中,我們定義了一個Shape接口和兩個實現了Shape接口的類Circle和Rectangle。在Main類中,我們使用Shape類型的變量來指向Circle和Rectangle的實例,并且調用它們的draw方法。由于多態的特性,我們可以在運行時動態地確定shape1和shape2的具體類型,從而調用相應的draw方法。