Java面向?qū)ο蟮娜筇卣?/h1>
更新時間:2015年06月12日 08:42:51 投稿:hebedich
這篇文章主要給大家結(jié)合相關(guān)示例介紹了Java面向?qū)ο蟮娜筇卣?封裝、繼承、多態(tài),非常的實用,有需要的小伙伴可以參考下。
java面向?qū)ο蟮娜筇卣鳎骸胺庋b、繼承、多態(tài)”。更多Java技術(shù)知識,請登陸瘋狂軟件教育官網(wǎng)。微信搜索微信號:瘋狂軟件,參加2015年優(yōu)惠活動,有機會獲得優(yōu)惠劵和代金劵。
以本文為例,User類中的變量為私有變量,只能通過創(chuàng)建對象(此時構(gòu)造方法自動調(diào)用)來賦值。
外界只能通過公有方法api()來訪問User類。
Admin類繼承了User類,調(diào)用了其構(gòu)造方法,還重寫了method_1方法,增加了一個特有方法power()。
User文件
public class User {
/**
* 私有變量, 僅限本類訪問
*/
private String name;
private int age;
/**
* 構(gòu)造方法, 自動調(diào)用
*/
public User(String name, int age){
this.name = name;
this.age = age;
}
/**
* 私有方法, 僅限本類訪問
*/
private void method_1(){
System.out.println("i am a " + name + " ; my age is: " + age);
}
/**
* 可被子類繼承、覆蓋和同包調(diào)用
*/
protected void method_2(){
System.out.println("i am not override");
}
/**
* 公有方法,對外接口
*/
public void api() {
method_1();
method_2();
}
}
Admin文件
public class Admin extends User {
/**
* 構(gòu)造方法
*/
public Admin(String name, int age) {
// 使用父類的構(gòu)造方法
super(name, age);
}
/**
* 覆蓋父類的同名方法
*/
protected void method_2() {
System.out.println("NO, you are override");啊
}
/**
* 子類特有方法
*/
public void power(){
System.out.println("admin is powerful");
}
}
Main文件
public class Main{
public static void main(String[] arg) {
// 實例化一個User對象,并調(diào)用User的公有方法
User a = new User("user", 12);
a.api();
// 輸出換行,方便區(qū)分不同的代碼
System.out.println();
// 實例化一個Admin對象,并調(diào)用Admin的兩個方法
Admin admin_me = new Admin("admin", 23);
admin_me.api(); // 繼承自User父類
admin_me.power(); // 自身獨有的方法
System.out.println();
/**
* 多態(tài)性
*/
User test_admin = new Admin("test_admin", 34);
test_admin.api();
// test_admin.power(); // User中沒有聲明power這個方法,所以不能使用
}
}
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
-
maven插件maven-assembly-plugin打包歸納文件zip/tar使用
java項目運行的文件需要jar或者war格式,同時還需要使用Java命令,本文主要介紹了maven插件maven-assembly-plugin打包歸納文件zip/tar使用,具有一定的參考價值,感興趣的可以了解一下 2024-02-02
-
Java實現(xiàn)Android拼圖游戲設(shè)計過程解析
這篇文章主要介紹了Java實現(xiàn)Android拼圖游戲設(shè)計過程解析,下面文章要接受的這是一款基于 Java 開發(fā)的移動端安卓小游戲,可以作為大家在學習期間的一個小練習,接下來和小編一起進入文章學習具體內(nèi)容吧 2022-02-02
-
詳解Spring整合Quartz實現(xiàn)動態(tài)定時任務(wù)
本篇文章主要介紹了詳解Spring整合Quartz實現(xiàn)動態(tài)定時任務(wù),具有一定的參考價值,感興趣的小伙伴們可以參考一下。
2017-03-03
-
SpringBoot實現(xiàn)動態(tài)加載外部Jar流程詳解
這篇文章主要介紹了SpringBoot動態(tài)加載外部Jar的流程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧 2023-05-05
-
java案例實戰(zhàn)之字符串轉(zhuǎn)換為二進制
最近遇到個需求,要求編寫一個程序,從鍵盤錄入一個字符串,將字符串轉(zhuǎn)換為二進制數(shù),下面這篇文章主要給大家介紹了關(guān)于java字符串轉(zhuǎn)換為二進制的相關(guān)資料,需要的朋友可以參考下 2023-06-06
最新評論
java面向?qū)ο蟮娜筇卣鳎骸胺庋b、繼承、多態(tài)”。更多Java技術(shù)知識,請登陸瘋狂軟件教育官網(wǎng)。微信搜索微信號:瘋狂軟件,參加2015年優(yōu)惠活動,有機會獲得優(yōu)惠劵和代金劵。
以本文為例,User類中的變量為私有變量,只能通過創(chuàng)建對象(此時構(gòu)造方法自動調(diào)用)來賦值。
外界只能通過公有方法api()來訪問User類。
Admin類繼承了User類,調(diào)用了其構(gòu)造方法,還重寫了method_1方法,增加了一個特有方法power()。
User文件
public class User {
/**
* 私有變量, 僅限本類訪問
*/
private String name;
private int age;
/**
* 構(gòu)造方法, 自動調(diào)用
*/
public User(String name, int age){
this.name = name;
this.age = age;
}
/**
* 私有方法, 僅限本類訪問
*/
private void method_1(){
System.out.println("i am a " + name + " ; my age is: " + age);
}
/**
* 可被子類繼承、覆蓋和同包調(diào)用
*/
protected void method_2(){
System.out.println("i am not override");
}
/**
* 公有方法,對外接口
*/
public void api() {
method_1();
method_2();
}
}
Admin文件
public class Admin extends User {
/**
* 構(gòu)造方法
*/
public Admin(String name, int age) {
// 使用父類的構(gòu)造方法
super(name, age);
}
/**
* 覆蓋父類的同名方法
*/
protected void method_2() {
System.out.println("NO, you are override");啊
}
/**
* 子類特有方法
*/
public void power(){
System.out.println("admin is powerful");
}
}
Main文件
public class Main{
public static void main(String[] arg) {
// 實例化一個User對象,并調(diào)用User的公有方法
User a = new User("user", 12);
a.api();
// 輸出換行,方便區(qū)分不同的代碼
System.out.println();
// 實例化一個Admin對象,并調(diào)用Admin的兩個方法
Admin admin_me = new Admin("admin", 23);
admin_me.api(); // 繼承自User父類
admin_me.power(); // 自身獨有的方法
System.out.println();
/**
* 多態(tài)性
*/
User test_admin = new Admin("test_admin", 34);
test_admin.api();
// test_admin.power(); // User中沒有聲明power這個方法,所以不能使用
}
}
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
maven插件maven-assembly-plugin打包歸納文件zip/tar使用
java項目運行的文件需要jar或者war格式,同時還需要使用Java命令,本文主要介紹了maven插件maven-assembly-plugin打包歸納文件zip/tar使用,具有一定的參考價值,感興趣的可以了解一下2024-02-02
Java實現(xiàn)Android拼圖游戲設(shè)計過程解析
這篇文章主要介紹了Java實現(xiàn)Android拼圖游戲設(shè)計過程解析,下面文章要接受的這是一款基于 Java 開發(fā)的移動端安卓小游戲,可以作為大家在學習期間的一個小練習,接下來和小編一起進入文章學習具體內(nèi)容吧2022-02-02
詳解Spring整合Quartz實現(xiàn)動態(tài)定時任務(wù)
本篇文章主要介紹了詳解Spring整合Quartz實現(xiàn)動態(tài)定時任務(wù),具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-03-03
SpringBoot實現(xiàn)動態(tài)加載外部Jar流程詳解
這篇文章主要介紹了SpringBoot動態(tài)加載外部Jar的流程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2023-05-05
java案例實戰(zhàn)之字符串轉(zhuǎn)換為二進制
最近遇到個需求,要求編寫一個程序,從鍵盤錄入一個字符串,將字符串轉(zhuǎn)換為二進制數(shù),下面這篇文章主要給大家介紹了關(guān)于java字符串轉(zhuǎn)換為二進制的相關(guān)資料,需要的朋友可以參考下2023-06-06

