//繼承實(shí)例
import java.util.Arrays;
public class Test1 {
public static void main(String[] args) {
CosmeticManager cm1 = new CosmeticManager();
cm1.add(new Cosmetic("shizendo","import",1000));
cm1.add(new Cosmetic("香奈兒","import",900));
cm1.add(new Cosmetic("sk2","import",1500));
cm1.add(new Cosmetic("dabao","domestic",100));
cm1.printAll();
System.out.println("====================");
SortCosmeticManager cm = new SortCosmeticManager();
cm.add(new Cosmetic("shizendo","import",1000));
cm.add(new Cosmetic("香奈兒","import",900));
cm.add(new Cosmetic("sk2","import",1500));
cm.add(new Cosmetic("dabao","domestic",100));
cm.printAll();
System.out.println("====================");
ImportCosmeticManager cm2 = new ImportCosmeticManager();
cm2.add(new Cosmetic("shizendo","import",1000));
cm2.add(new Cosmetic("香奈兒","import",900));
cm2.add(new Cosmetic("sk2","import",1500));
cm2.add(new Cosmetic("dabao","domestic",100));
cm2.printAll();
}
}
//化妝品類
class Cosmetic{
private String name;
private String type;
private int price;
public Cosmetic() {}
public Cosmetic(String name, String type, int price) {
this.name = name;
this.type = type;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public String getInfo(){
return "name="+name+"type="+type+"price="+price;
}
}
//化妝品管理類
class CosmeticManager{
protected Cosmetic[] cs=new Cosmetic[4];//子類需要所以用protected,如果還用private需要Getter Setter方法,代碼量多
protected int count=0;//子類需要所以用protected,如果還用private需要Getter Setter方法,代碼量多
//進(jìn)貨功能
public void add(Cosmetic c){
int size=cs.length;
if(count>=size){
int newLen=size*2;
cs=Arrays.copyOf(cs,newLen);
}
cs[count]=c;
count++;
}
//輸出所有產(chǎn)品
public void printAll(){
for (int i = 0; i < count; i++) {
System.out.println(cs[i].getInfo());
}
}
}
//可按單價排序的化妝品管理類
class SortCosmeticManager extends CosmeticManager{
//排序輸出所有產(chǎn)品(重寫父類方法)
public void printAll(){
Cosmetic[] temp=Arrays.copyOf(cs,count);
//冒泡排序
Cosmetic c=null;
for (int i = 0; i < temp.length; i++) {
for (int j = 0; j < temp.length-i-1; j++) {
if(temp[j].getPrice()>temp[j+1].getPrice()){
c=temp[j];
temp[j]=temp[j+1];
temp[j+1]=c;
}
}
}
//foreach循環(huán)輸出數(shù)組
for(Cosmetic cosmetic:temp){
System.out.println(cosmetic.getInfo());
}
}
}
//篩選出進(jìn)口化妝品
class ImportCosmeticManager extends CosmeticManager{
//輸出所有產(chǎn)品
public void printAll(){
//比較兩個字符串的值不能使用==
for (int i = 0; i < count; i++) {
if("import".equals(cs[i].getType())){
System.out.println(cs[i].getInfo());
}
}
}
}
java11 OOP繼承實(shí)例 2022-02-07
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 潤生啊~ 看到潤葉和向前在一起我們兩也算是心上的一塊兒石頭終于落地了 還有你那個兩個同班同學(xué) 都什么神仙朋友,神仙...