摘要:面向?qū)ο蟮娜筇卣鞣庋b繼承多態(tài)。以本文為例,類中的變量為私有變量,只能通過創(chuàng)建對(duì)象此時(shí)構(gòu)造方法自動(dòng)調(diào)用來賦值。
java面向?qū)ο蟮娜筇卣鳎骸胺庋b、繼承、多態(tài)”。
以本文為例,User類中的變量為私有變量,只能通過創(chuàng)建對(duì)象(此時(shí)構(gòu)造方法自動(dòng)調(diào)用)來賦值。外界只能通過公有方法api()來訪問User類。
Admin類繼承了User類,調(diào)用了其構(gòu)造方法,還重寫了method_1方法,增加了一個(gè)特有方法power()。
User文件public class User { /** * 私有變量, 僅限本類訪問 */ private String name; private int age; /** * 構(gòu)造方法, 自動(dòng)調(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"); } /** * 公有方法,對(duì)外接口 */ 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) { // 實(shí)例化一個(gè)User對(duì)象,并調(diào)用User的公有方法 User a = new User("user", 12); a.api(); // 輸出換行,方便區(qū)分不同的代碼 System.out.println(); // 實(shí)例化一個(gè)Admin對(duì)象,并調(diào)用Admin的兩個(gè)方法 Admin admin_me = new Admin("admin", 23); admin_me.api(); // 繼承自User父類 admin_me.power(); // 自身獨(dú)有的方法 System.out.println(); /** * 多態(tài)性 */ User test_admin = new Admin("test_admin", 34); test_admin.api(); // test_admin.power(); // User中沒有聲明power這個(gè)方法,所以不能使用 } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/64199.html
摘要:面向?qū)ο缶幊趟枷朊嫦驅(qū)ο螅?jiǎn)單來說就是由動(dòng)作的執(zhí)行者變?yōu)閯?dòng)作的操控者。面向?qū)ο笫窍鄬?duì)于面向過程的。面向?qū)ο笕筇卣髅嫦驅(qū)ο笥腥筇卣鳎捶庋b繼承和多態(tài)。接口和抽象類接口接口名方法方法,默認(rèn)修飾符為,不能用其他修飾符修飾接口。 面向?qū)ο缶幊趟枷?面向?qū)ο螅?jiǎn)單來說就是由動(dòng)作的執(zhí)行者變?yōu)閯?dòng)作的操控者。結(jié)合具體例子來說就是使用某個(gè)人或者工具所具有的功能而不用去管功能的具體實(shí)現(xiàn)方式。例如現(xiàn)實(shí)中...
摘要:什么是面向?qū)ο蟊疚牟辉谡撌觥=酉聛碚f一下面向?qū)ο蟮娜筇卣髟诋?dāng)中的實(shí)現(xiàn)。封裝實(shí)現(xiàn)封裝實(shí)現(xiàn)就是是對(duì)象內(nèi)部的變化對(duì)外界是透明的不可見。這種做法使對(duì)象之間低耦合便于維護(hù)升級(jí)團(tuán)隊(duì)協(xié)作開發(fā)。。 概述 本來打算寫設(shè)計(jì)模式的,在談?wù)搄s的設(shè)計(jì)模式之前先說一下js的面向?qū)ο?因?yàn)楹芏嘣O(shè)計(jì)模式的實(shí)現(xiàn)都摻雜著面向?qū)ο蟮乃枷?所以先做一下前期鋪墊。 js我們都知道是一種動(dòng)態(tài)類型腳本型語言,變量類型無法保證,...
摘要:類用于描述客觀世界里某一類對(duì)象的共同特征,而對(duì)象則是類的具體的存在,程序使用類的構(gòu)造器來創(chuàng)建該類的對(duì)象。也支持面向?qū)ο蟮娜筇卣鞣庋b繼承和多態(tài)。構(gòu)造器用于對(duì)類實(shí)例進(jìn)行初始化操作,構(gòu)造器支持重載。 Java是面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,Java語言提供了定義類、成員變量、方法等最基本的功能。類可被認(rèn)為是一種自定義的數(shù)據(jù)類型,可以使用類來定義變量。類用于描述客觀世界里某一類對(duì)象的共同特征,而對(duì)...
摘要:面向?qū)ο笈c面向過程的區(qū)別要知道,二者并不是非此即彼,而是相輔相成的。而面向過程,則在微觀上對(duì)對(duì)象內(nèi)部進(jìn)行具體的實(shí)現(xiàn)。面向?qū)ο蟮娜筇匦哉f到面向?qū)ο螅筒坏貌徽f其三大特性封裝繼承和多態(tài)。封裝封裝是面向?qū)ο笞罨A(chǔ)的特性。 作者:伯特出處:github.com/ruicbAndroid/LoulanPlan聲明:本文出自伯特的《LoulanPlan》,轉(zhuǎn)載務(wù)必注明作者及出處。 剛學(xué)習(xí) Jav...
閱讀 537·2023-04-25 14:26
閱讀 1292·2021-11-25 09:43
閱讀 3485·2021-09-22 15:25
閱讀 1454·2019-08-30 15:54
閱讀 528·2019-08-30 12:57
閱讀 773·2019-08-29 17:24
閱讀 3170·2019-08-28 18:13
閱讀 2691·2019-08-28 17:52