本文主要介紹了面向?qū)ο蟮娜筇卣鲗?shí)例解析,下面看看具體內(nèi)容。
德清網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司。
封裝
封裝一個Teacher和Student類
package com.hz.test; public class Teacher { private String name; private String majorDirection; private String teachCourse; private int teachAge; public Teacher() { super(); } public Teacher(String name,String majorDirection,String teachCourse,int teachAge) { this.name = name; this.majorDirection = majorDirection; this.teachCourse = teachCourse; this.teachAge = teachAge; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getMajorDirection() { return majorDirection; } public void setMajorDirection(String majorDirection) { this.majorDirection = majorDirection; } public String getTeachCourse() { return teachCourse; } public void setTeachCourse(String teachCourse) { this.teachCourse = teachCourse; } public int getTeachAge() { return teachAge; } public void setTeachAge(int teachAge) { this.teachAge = teachAge; } public String toString() { return "姓名=" + getName() + ", 專業(yè)方向=" + getMajorDirection() + ", 所教課程=" + getTeachCourse() + ", 教齡=" + getTeachAge(); } }
Student類
package com.hz.test; import java.util.Arrays; /** * @author ztw * */ public class Student { private String name; private int age; private String[] courses; private String interest; public Student() { super(); } public Student(String name,int age,String[] courses,String interest) { this.name = name; this.age = age; this.courses = courses; this.interest = interest; } public void setName(String name){ this.name = name; } public String getName(){ return name; } public void setAge(int age){ if(age<0){ System.out.println("年齡不能為負(fù)值"); }else{ this.age = age; } } public int getAge(){ return age; } public void setCourses(String[] courses){ this.courses = courses; } public String getCourses(){ return Arrays.toString(courses); } public void setInterest(String interest){ this.interest = interest; } public String getInterest(){ return interest; } public String toString() { return "姓名=" + getName() + ", 年齡=" + getAge() + ", 課程=" + getCourses() + ", 興趣=" + getInterest(); } }
測試類
package com.hz.test; public class Test { public static void main(String[] args) { String arr[] = {"阿斯達(dá)","是的","大概","太誘惑"}; Student stu = new Student("張三",21,arr,"打球"); Teacher tea = new Teacher("王五","阿斯達(dá)","阿斯達(dá)",99); System.out.println(stu); System.out.println(tea); } }
輸出結(jié)果:
姓名=張三, 年齡=21, 課程=[阿斯達(dá), 是的, 大概, 太誘惑], 興趣=打球
姓名=王五, 專業(yè)方向=阿斯達(dá), 所教課程=阿斯達(dá), 教齡=99
繼承
定義Play,TaoistPriest,Master,Warrior
public class Play { String main; public Play(String main) { this.main = main; } public void hitMonster() { System.out.println(main+"打怪"); } }
/** * TaoistPriest:道士 * @author ztw * */ public class TaoistPriest extends Play { { System.out.print("我是道士:"); } public TaoistPriest(String main) { super(main); } }
/** * Master:法師 * @author ztw * */ public class Master extends Play{ { System.out.print("我是法師:"); } public Master(String main) { super(main); } }
/** * Warrior:武士 * @author ztw * */ public class Warrior extends Play{ { System.out.print("我是武士:"); } public Warrior(String main) { super(main); } }
測試類
public class Test { public static void main(String[] args) { TaoistPriest tp = new TaoistPriest("靈魂火符"); tp.hitMonster(); Master m = new Master("雷電術(shù)"); m.hitMonster(); Warrior w = new Warrior("烈火術(shù)"); w.hitMonster(); } }
輸出結(jié)果:
我是道士:靈魂火符打怪 我是法師:雷電術(shù)打怪 我是武士:烈火術(shù)打怪
多態(tài)
服務(wù)器,客戶端交互
LoginListener
public interface LoginListener { public void succeed(String msg); public void failed(String msg); }
MyLoginListener
public class MyLoginListener implements LoginListener{ public void succeed(String msg) { System.out.println(msg); } public void failed(String msg) { System.out.println(msg); } }
Server
public class Server { public void login(String userName,String password,LoginListener listener) { System.out.print("loading"); for (int i = 0; i < 10; i++) { try { Thread.sleep(100*i); System.out.print("."); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(userName.equals("zhangsan") && password.equals("123")){ if(listener!=null){ listener.succeed("登錄成功"); } }else{ if(listener!=null){ listener.succeed("登錄失敗"); } } } }
測試類
public class LoginTest { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("請輸入用戶名:"); String userName = sc.next(); System.out.println("請輸入用戶密碼:"); String password = sc.next(); Server server = new Server(); server.login(userName, password, new MyLoginListener()); } }
輸出結(jié)果
請輸入用戶名: zhangsan 請輸入用戶密碼: 123 loading……….登錄成功
總結(jié)
以上就是本文關(guān)于Java面向?qū)ο缶幊蹋ǚ庋b,繼承,多態(tài))實(shí)例解析的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:解析Java編程之Synchronized鎖住的對象、Java語言面向?qū)ο缶幊趟枷胫惻c對象實(shí)例詳解等,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
網(wǎng)頁題目:Java面向?qū)ο缶幊蹋ǚ庋b/繼承/多態(tài))實(shí)例解析
標(biāo)題來源:http://www.rwnh.cn/article22/jdiejc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、搜索引擎優(yōu)化、域名注冊、全網(wǎng)營銷推廣、網(wǎng)站策劃、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)