From cc53e9a43b1a85e6250505190d650d272ec0c2e9 Mon Sep 17 00:00:00 2001 From: Zhi <2308981443@qq.com> Date: Mon, 24 Jul 2017 18:16:53 +0800 Subject: [PATCH 1/5] Update DuoTaiDemo.java --- .../DuoTaiDemo.java" | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git "a/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo.java" "b/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo.java" index 0f0d197e..b3551198 100644 --- "a/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo.java" +++ "b/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo.java" @@ -1,10 +1,10 @@ /* - 多态的好处: - A:提高了程序的维护性(由继承保证) - B:提高了程序的扩展性(由多态保证) + 澶氭佺殑濂藉锛 + A:鎻愰珮浜嗙▼搴忕殑缁存姢鎬(鐢辩户鎵夸繚璇) + B:鎻愰珮浜嗙▼搴忕殑鎵╁睍鎬(鐢卞鎬佷繚璇) - 多态的弊端: - 不能访问子类特有的功能。 + 澶氭佺殑寮婄锛 + 涓嶈兘璁块棶瀛愮被鐗规湁鐨勫姛鑳姐 */ class Animal { public void eat(){} @@ -12,72 +12,72 @@ public void sport(){} /* public void sleep() { - System.out.println("爱睡觉"); + System.out.println("鐖辩潯瑙"); } */ } - +//锛堢户鎵匡級閲嶅啓Animal绫婚噷鐨2涓垚鍛樺嚱鏁帮紙鏂规硶锛 class Dog extends Animal { public void eat(){ - System.out.println("狗吃肉"); + System.out.println("鐙楀悆鑲"); } public void sport(){ - System.out.println("狗跑步"); + System.out.println("鐙楄窇姝"); } - + //浣滀负瀛愮被鍙互鏂板姞鏂规硶 public void lookDoor() { - System.out.println("看门"); + System.out.println("鐪嬮棬"); } } class Cat extends Animal { public void eat(){ - System.out.println("猫吃鱼"); + System.out.println("鐚悆楸"); } public void sport(){ - System.out.println("猫和老鼠捉迷藏"); + System.out.println("鐚拰鑰侀紶鎹夎糠钘"); } } class Pig extends Animal { public void eat(){ - System.out.println("猪吃饲料"); + System.out.println("鐚悆楗叉枡"); } public void sport(){ - System.out.println("猪爱睡觉"); + System.out.println("鐚埍鐫¤"); } } class DuoTaiDemo { public static void main(String[] args) { /* - //我喜欢狗,养了一只狗 + //鎴戝枩娆㈢嫍锛屽吇浜嗕竴鍙嫍 Dog d = new Dog(); d.eat(); d.sport(); - //我很喜欢狗,又养了一只狗 + //鎴戝緢鍠滄鐙楋紝鍙堝吇浜嗕竴鍙嫍 Dog d2 = new Dog(); d2.eat(); d2.sport(); - //我特别喜欢狗,又养了一只狗 + //鎴戠壒鍒枩娆㈢嫍锛屽張鍏讳簡涓鍙嫍 Dog d3 = new Dog(); d3.eat(); d3.sport(); */ - //我... - //我要养很多只狗,而且,每个狗对象都要调用一些方法,或者还要做一些操作。 - //并且这些操作是一样的。仅仅是狗对象不一样。 - //如果一直写下去,代码会变得非常麻烦 - //所以,我们要考虑对这个代码进行优化 - //如何优化呢?因为发现操作是一样的,就是对象不一样 - //所以,我们就准备使用方法改进,把对象作为参数传递过来即可。 - //有了方法后,我们就可以如下调用 + //鎴... + //鎴戣鍏诲緢澶氬彧鐙楋紝鑰屼笖锛屾瘡涓嫍瀵硅薄閮借璋冪敤涓浜涙柟娉曪紝鎴栬呰繕瑕佸仛涓浜涙搷浣溿 + //骞朵笖杩欎簺鎿嶄綔鏄竴鏍风殑銆備粎浠呮槸鐙楀璞′笉涓鏍枫 + //濡傛灉涓鐩村啓涓嬪幓锛屼唬鐮佷細鍙樺緱闈炲父楹荤儲 + //鎵浠ワ紝鎴戜滑瑕佽冭檻瀵硅繖涓唬鐮佽繘琛屼紭鍖 + //濡備綍浼樺寲鍛?鍥犱负鍙戠幇鎿嶄綔鏄竴鏍风殑锛屽氨鏄璞′笉涓鏍 + //鎵浠ワ紝鎴戜滑灏卞噯澶囦娇鐢ㄦ柟娉曟敼杩涳紝鎶婂璞′綔涓哄弬鏁颁紶閫掕繃鏉ュ嵆鍙 + //鏈変簡鏂规硶鍚庯紝鎴戜滑灏卞彲浠ュ涓嬭皟鐢 Dog d = new Dog(); Dog d2 = new Dog(); Dog d3 = new Dog(); @@ -90,10 +90,10 @@ public static void main(String[] args) { printAnimal(d3); System.out.println("-----------"); - //我喜欢猫,很喜欢猫,特别喜欢猫 + //鎴戝枩娆㈢尗锛屽緢鍠滄鐚紝鐗瑰埆鍠滄鐚 //... - //写一个方法实现吧 - //调用 + //鍐欎竴涓柟娉曞疄鐜板惂 + //璋冪敤 Cat c = new Cat(); Cat c2 = new Cat(); Cat c3 = new Cat(); @@ -106,10 +106,10 @@ public static void main(String[] args) { printAnimal(c3); System.out.println("-----------"); - //我后来养了一只猪,请问我要写成一样的代码,该如何实现呢? - //A:先创建猪类继承自动物类 - //B:在测试类里面写方法实现 - //C:在测试类中创建对象,调用方法即可 + //鎴戝悗鏉ュ吇浜嗕竴鍙尓锛岃闂垜瑕佸啓鎴愪竴鏍风殑浠g爜锛岃濡備綍瀹炵幇鍛? + //A:鍏堝垱寤虹尓绫荤户鎵胯嚜鍔ㄧ墿绫 + //B:鍦ㄦ祴璇曠被閲岄潰鍐欐柟娉曞疄鐜 + //C:鍦ㄦ祴璇曠被涓垱寤哄璞★紝璋冪敤鏂规硶鍗冲彲 Pig p = new Pig(); Pig p2 = new Pig(); Pig p3 = new Pig(); @@ -121,16 +121,16 @@ public static void main(String[] args) { printAnimal(p2); printAnimal(p3); - //我还喜欢狼,要养狼 - //步骤会跟刚才一样,我们自己也是可以完成的 - //我还喜欢猴子,... - //我们来分析一下: - //我们重新定义一个新的类是没有任何问题的,我们继续在测试类中的main方法中调用也是没有问题的 - //我们不应该去在测试类中添加新的功能 - //以后,我们再写一个程序的时候,有一个基本的设计原则:对扩展开放,对修改关闭。 - //但是,我们现在如果要完成这个程序,还就得去修改测试类 - //为了不去修改测试类中除了main方法以外的内容 - //我们需要对下面的几个方法进行一个分析: + //鎴戣繕鍠滄鐙硷紝瑕佸吇鐙 + //姝ラ浼氳窡鍒氭墠涓鏍,鎴戜滑鑷繁涔熸槸鍙互瀹屾垚鐨 + //鎴戣繕鍠滄鐚村瓙锛... + //鎴戜滑鏉ュ垎鏋愪竴涓嬶細 + //鎴戜滑閲嶆柊瀹氫箟涓涓柊鐨勭被鏄病鏈変换浣曢棶棰樼殑锛屾垜浠户缁湪娴嬭瘯绫讳腑鐨刴ain鏂规硶涓皟鐢ㄤ篃鏄病鏈夐棶棰樼殑 + //鎴戜滑涓嶅簲璇ュ幓鍦ㄦ祴璇曠被涓坊鍔犳柊鐨勫姛鑳 + //浠ュ悗锛屾垜浠啀鍐欎竴涓▼搴忕殑鏃跺欙紝鏈変竴涓熀鏈殑璁捐鍘熷垯锛氬鎵╁睍寮鏀撅紝瀵逛慨鏀瑰叧闂 + //浣嗘槸锛屾垜浠幇鍦ㄥ鏋滆瀹屾垚杩欎釜绋嬪簭锛岃繕灏卞緱鍘讳慨鏀规祴璇曠被 + //涓轰簡涓嶅幓淇敼娴嬭瘯绫讳腑闄や簡main鏂规硶浠ュ鐨勫唴瀹 + //鎴戜滑闇瑕佸涓嬮潰鐨勫嚑涓柟娉曡繘琛屼竴涓垎鏋愶細 } /* @@ -159,4 +159,4 @@ public static void printPig(Pig p) { //a.lookDoor(); a.sport(); } -} \ No newline at end of file +} From 896efe9db25a72d1ec35f69551cf1e40a9479250 Mon Sep 17 00:00:00 2001 From: Zhi <2308981443@qq.com> Date: Mon, 24 Jul 2017 18:40:48 +0800 Subject: [PATCH 2/5] Update DuoTaiDemo2.java --- .../DuoTaiDemo2.java" | 65 ++++++++++--------- 1 file changed, 33 insertions(+), 32 deletions(-) diff --git "a/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo2.java" "b/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo2.java" index 7b33e6d7..c804840f 100644 --- "a/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo2.java" +++ "b/day09/code/01_\345\244\232\346\200\201/DuoTaiDemo2.java" @@ -1,31 +1,32 @@ /* - 如何访问子类特有功能呢? - A:创建子类对象即可。 - B:多态的转型问题 - 向上转型 - 从子到父 - 父类引用指向子类对象 - 向下转型 - 从父到子 - 父类引用转为子类对象 + 濡備綍璁块棶瀛愮被鐗规湁鍔熻兘鍛? + A:鍒涘缓瀛愮被瀵硅薄鍗冲彲銆 + B:澶氭佺殑杞瀷闂 + 鍚戜笂杞瀷 + 浠庡瓙鍒扮埗 + 鐖剁被寮曠敤鎸囧悜瀛愮被瀵硅薄 + 鍚戜笅杞瀷 + 浠庣埗鍒板瓙 + 鐖剁被寮曠敤杞负瀛愮被瀵硅薄 - 孔子装爹案例 + 瀛斿瓙瑁呯埞妗堜緥 - 孔子:教书():讲论语,玩游戏():连连看,age:20 - 孔子爹:教书():JavaSE,age:40 + 瀛斿瓙锛氭暀涔():璁茶璇,鐜╂父鎴():杩炶繛鐪,age:20 + 瀛斿瓙鐖癸細鏁欎功():JavaSE锛宎ge:40 - //多态 - 孔子爹 k爹 = new 孔子(); //Android很火,而JavaSE是Android基础,所以JavaSE很火。 - //爹太忙,儿子装爹去讲课。粘上小胡子,带上眼镜。向上转型 - System.out.println(k爹.age); //40 - k爹.教书(); //讲论语 - //k爹.玩游戏(); //报错 + //澶氭 + 瀛斿瓙鐖 k鐖 = new 瀛斿瓙(); //Android寰堢伀锛岃孞avaSE鏄疉ndroid鍩虹锛屾墍浠avaSE寰堢伀銆 + //鐖瑰お蹇欙紝鍎垮瓙瑁呯埞鍘昏璇俱傜矘涓婂皬鑳″瓙锛屽甫涓婄溂闀溿傚悜涓婅浆鍨 + // k鐖 鏄竴涓彞鏌勫疄闄呭彧鎯崇殑鏄竴涓猲ew鍑虹殑鈥滃効瀛愨濆璞 + System.out.println(k鐖.age); //40 + k鐖.鏁欎功(); //璁茶璇 + //k鐖.鐜╂父鎴(); //鎶ラ敊 - //回家了 - 孔子 k = (孔子)k爹; //去掉小胡子,去掉眼镜。向下转型 + //鍥炲浜 + 瀛斿瓙 k = (瀛斿瓙)k鐖; //鍘绘帀灏忚儭瀛愶紝鍘绘帀鐪奸暅銆傚悜涓嬭浆鍨 //寮哄埗杞崲绫诲瀷 System.out.println(k.age); //20 - k.教书(); //讲论语 - k.玩游戏(); + k.鏁欎功(); //璁茶璇 + k.鐜╂父鎴(); */ class Animal { public void eat(){} @@ -33,35 +34,35 @@ public void eat(){} class Dog extends Animal { public void eat(){ - System.out.println("狗吃骨头"); + System.out.println("鐙楀悆楠ㄥご"); } public void help() { - System.out.println("狗可以帮助警察叔叔抓小偷"); + System.out.println("鐙楀彲浠ュ府鍔╄瀵熷彅鍙旀姄灏忓伔"); } } class Cat extends Animal { public void eat(){ - System.out.println("猫吃老鼠"); + System.out.println("鐚悆鑰侀紶"); } } class DuoTaiDemo2 { public static void main(String[] args) { - //多态 - Animal a = new Dog(); //向上转型 + //澶氭 + Animal a = new Dog(); //鍚戜笂杞瀷 a.eat(); - //a.help(); //编译看左边 + //a.help(); //缂栬瘧鐪嬪乏杈 - //向下转型 + //鍚戜笅杞瀷 Dog d = (Dog)a; d.eat(); d.help(); System.out.println("-------------"); - //会报错吗? - a = new Cat(); ////向上转型 + //浼氭姤閿欏悧? + a = new Cat(); ////鍚戜笂杞瀷 a.eat(); Cat c = (Cat)a; @@ -71,4 +72,4 @@ public static void main(String[] args) { //dd.eat(); //dd.help(); } -} \ No newline at end of file +} From d17bff0d5583912afafed355c0b529e106f5c40e Mon Sep 17 00:00:00 2001 From: Zhi <2308981443@qq.com> Date: Wed, 26 Jul 2017 11:02:34 +0800 Subject: [PATCH 3/5] =?UTF-8?q?Update=20day09=E6=80=BB=E7=BB=93.txt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "day09/day09\346\200\273\347\273\223.txt" | 198 +++++++++++----------- 1 file changed, 99 insertions(+), 99 deletions(-) diff --git "a/day09/day09\346\200\273\347\273\223.txt" "b/day09/day09\346\200\273\347\273\223.txt" index 3f10c6a7..b1f7df2a 100644 --- "a/day09/day09\346\200\273\347\273\223.txt" +++ "b/day09/day09\346\200\273\347\273\223.txt" @@ -1,102 +1,102 @@ -1:多态(掌握) - (1)同一个事物在不同时刻表现出现的多种状态。 - 举例:水,猫和动物 - (2)前提 - A:有继承或者实现关系 - B:有方法重写 - 因为抽象类中的抽象方法以及接口中的方法都必须被子类重写,调用才有意义。 - C:有父类或者父接口引用指向子类对象 - (3)多态中的成员访问特点 +1锛氬鎬(鎺屾彙) + (1)鍚屼竴涓簨鐗╁湪涓嶅悓鏃跺埢琛ㄧ幇鍑虹幇鐨勫绉嶇姸鎬併 + 涓句緥锛氭按锛岀尗鍜屽姩鐗 + (2)鍓嶆彁 + A:鏈夌户鎵挎垨鑰呭疄鐜板叧绯 + B:鏈夋柟娉曢噸鍐 + 鍥犱负鎶借薄绫讳腑鐨勬娊璞℃柟娉曚互鍙婃帴鍙d腑鐨勬柟娉曢兘蹇呴』琚瓙绫婚噸鍐欙紝璋冪敤鎵嶆湁鎰忎箟銆 + C:鏈夌埗绫绘垨鑰呯埗鎺ュ彛寮曠敤鎸囧悜瀛愮被瀵硅薄 + (3)澶氭佷腑鐨勬垚鍛樿闂壒鐐 Fu f = new Zi(); - A:成员变量 - 编译看左边,运行看左边 - B:成员方法 - 编译看左边,运行看右边 - C:静态方法 - 编译看左边,运行看左边 - (4)好处和弊端 - A:好处 - 提高了代码的维护性 - 提高了代码的扩展性 - B:弊端 - 不能访问子类特有功能 - (5)如何访问子类特有功能 - A:创建子类对象 - B:向下转型 - (6)多态中的转型 - A:向上转型 - 子到父 - B:向下转型 - 父到子(加强制转换) - (7)孔子装爹案例 + A:鎴愬憳鍙橀噺 + 缂栬瘧鐪嬪乏杈癸紝杩愯鐪嬪乏杈 // f鍙ユ焺瀹為檯鎸囧悜涓涓猌I锛堬級绫诲瀷鐨勫璞 + B:鎴愬憳鏂规硶 + 缂栬瘧鐪嬪乏杈癸紝杩愯鐪嬪彸杈 + C:闈欐佹柟娉 + 缂栬瘧鐪嬪乏杈癸紝杩愯鐪嬪乏杈 + (4)濂藉鍜屽紛绔 + A:濂藉 + 鎻愰珮浜嗕唬鐮佺殑缁存姢鎬 + 鎻愰珮浜嗕唬鐮佺殑鎵╁睍鎬 + B:寮婄 + 涓嶈兘璁块棶瀛愮被鐗规湁鍔熻兘 + (5)濡備綍璁块棶瀛愮被鐗规湁鍔熻兘 + A:鍒涘缓瀛愮被瀵硅薄 + B:鍚戜笅杞瀷 + (6)澶氭佷腑鐨勮浆鍨 + A:鍚戜笂杞瀷 + 瀛愬埌鐖 + B:鍚戜笅杞瀷 + 鐖跺埌瀛(鍔犲己鍒惰浆鎹) + (7)瀛斿瓙瑁呯埞妗堜緥 -2:抽象类(掌握) - (1)有些时候,我们对事物不能用具体的东西来描述,这个时候就应该把事物定义为抽象类。 - (2)抽象类的特点: - A:抽象类或者抽象方法必须用abstract修饰 - B:抽象类中不一定有抽象方法,但是有抽象方法的类一定是抽象类 - C:抽象类不能实例化 - 可以按照多态的方式实例化。 - D:抽象类的子类 - a:要么是抽象类 - b:要么重写抽象类中的所有抽象方法 - (3)抽象类的成员特点: - A:成员变量 - 可以是变量,也可以是常量 - B:构造方法 - 有。 - 不能实例化,有构造方法有什么意义呢? - 用于子类访问父类数据的初始化。 - C:成员方法 - 可以是抽象的,也可以是非抽象的 - (4)抽象类的案例 - A:猫狗案例 - B:老师案例 - C:学生案例 - D:员工案例 - (5)两个小问题 - A:如果你看到一个抽象类中居然没有抽象方法,这个抽象类的意义何在? - 不让别人创建 - B:abstract不能和哪些关键字共存? - a:private 冲突 - b:final 冲突 - c:static 无意义 +2锛氭娊璞$被(鎺屾彙) + (1)鏈変簺鏃跺欙紝鎴戜滑瀵逛簨鐗╀笉鑳界敤鍏蜂綋鐨勪笢瑗挎潵鎻忚堪锛岃繖涓椂鍊欏氨搴旇鎶婁簨鐗╁畾涔変负鎶借薄绫汇 + (2)鎶借薄绫荤殑鐗圭偣锛 + A:鎶借薄绫绘垨鑰呮娊璞℃柟娉曞繀椤荤敤abstract淇グ + B:鎶借薄绫讳腑涓嶄竴瀹氭湁鎶借薄鏂规硶锛屼絾鏄湁鎶借薄鏂规硶鐨勭被涓瀹氭槸鎶借薄绫 + C:鎶借薄绫讳笉鑳藉疄渚嬪寲 + 鍙互鎸夌収澶氭佺殑鏂瑰紡瀹炰緥鍖栥 + D:鎶借薄绫荤殑瀛愮被 + a:瑕佷箞鏄娊璞$被 + b:瑕佷箞閲嶅啓鎶借薄绫讳腑鐨勬墍鏈夋娊璞℃柟娉 + (3)鎶借薄绫荤殑鎴愬憳鐗圭偣锛 + A:鎴愬憳鍙橀噺 + 鍙互鏄彉閲忥紝涔熷彲浠ユ槸甯搁噺 + B:鏋勯犳柟娉 + 鏈夈 + 涓嶈兘瀹炰緥鍖栵紝鏈夋瀯閫犳柟娉曟湁浠涔堟剰涔夊憿? + 鐢ㄤ簬瀛愮被璁块棶鐖剁被鏁版嵁鐨勫垵濮嬪寲銆 + C:鎴愬憳鏂规硶 + 鍙互鏄娊璞$殑锛屼篃鍙互鏄潪鎶借薄鐨 + (4)鎶借薄绫荤殑妗堜緥 + A:鐚嫍妗堜緥 + B:鑰佸笀妗堜緥 + C:瀛︾敓妗堜緥 + D:鍛樺伐妗堜緥 + (5)涓や釜灏忛棶棰 + A:濡傛灉浣犵湅鍒颁竴涓娊璞$被涓眳鐒舵病鏈夋娊璞℃柟娉,杩欎釜鎶借薄绫荤殑鎰忎箟浣曞湪? + 涓嶈鍒汉鍒涘缓 + B:abstract涓嶈兘鍜屽摢浜涘叧閿瓧鍏卞瓨? + a:private 鍐茬獊 + b:final 鍐茬獊 + c:static 鏃犳剰涔 -3:接口(掌握) - (1)有些时候,不是事物本身具备的功能,我们就考虑使用接口来扩展。 - (2)接口的特点: - A:定义接口用关键字interface - 格式是:interface 接口名 {} - B:类实现接口用关键字implements - 格式是:class 类名 implements 接口名 {} - C:接口不能实例化 - D:接口的子类 - a:要么是抽象类 - b:要么重写接口中的所有方法 - (3)接口的成员特点 - A:成员变量 - 只能是常量。 - 默认修饰符:public static final - B:成员方法 - 只能是抽象方法。 - 默认修饰符:public abstract - 推荐: - 建议自己写接口的时候,把默认修饰符加上。 - (4)类与接口的关系 - A:类与类 - 继承关系,只能单继承,可以多层继承。 - B:类与接口 - 实现关系,可以单实现,也可以多实现。 - 还可以在继承一个类的同时实现多个接口。 - C:接口与接口 - 继承关系,可以单继承,也可以多继承。 - (5)抽象类和接口的区别? - A:成员区别 - B:关系区别 - C:设计理念区别 - 抽象类:父抽象类,里面定义的是共性内容。 - 接口:父接口,里面定义的是扩展内容。 - (6)接口的案例: - A:猫狗案例加入跳高 - B:老师和学生案例加入抽烟 - C:教练和运动员案例加入学英语 \ No newline at end of file +3锛氭帴鍙(鎺屾彙) + (1)鏈変簺鏃跺欙紝涓嶆槸浜嬬墿鏈韩鍏峰鐨勫姛鑳斤紝鎴戜滑灏辫冭檻浣跨敤鎺ュ彛鏉ユ墿灞曘 + (2)鎺ュ彛鐨勭壒鐐癸細 + A:瀹氫箟鎺ュ彛鐢ㄥ叧閿瓧interface + 鏍煎紡鏄細interface 鎺ュ彛鍚 {} + B:绫诲疄鐜版帴鍙g敤鍏抽敭瀛梚mplements + 鏍煎紡鏄細class 绫诲悕 implements 鎺ュ彛鍚 {} + C:鎺ュ彛涓嶈兘瀹炰緥鍖 + D:鎺ュ彛鐨勫瓙绫 + a:瑕佷箞鏄娊璞$被 + b:瑕佷箞閲嶅啓鎺ュ彛涓殑鎵鏈夋柟娉 + (3)鎺ュ彛鐨勬垚鍛樼壒鐐 + A:鎴愬憳鍙橀噺 + 鍙兘鏄父閲忋 + 榛樿淇グ绗︼細public static final + B:鎴愬憳鏂规硶 + 鍙兘鏄娊璞℃柟娉曪紝浜ょ敱瀹炵幇鎺ュ彛鐨勭被瀹炵幇璇ユ柟娉曘 + 榛樿淇グ绗︼細public abstract + 鎺ㄨ崘锛 + 寤鸿鑷繁鍐欐帴鍙g殑鏃跺欙紝鎶婇粯璁や慨楗扮鍔犱笂銆 + (4)绫讳笌鎺ュ彛鐨勫叧绯 + A:绫讳笌绫 + 缁ф壙鍏崇郴锛屽彧鑳藉崟缁ф壙锛屽彲浠ュ灞傜户鎵裤 + B:绫讳笌鎺ュ彛 + 瀹炵幇鍏崇郴锛屽彲浠ュ崟瀹炵幇锛屼篃鍙互澶氬疄鐜般 + 杩樺彲浠ュ湪缁ф壙涓涓被鐨勫悓鏃跺疄鐜板涓帴鍙c + C:鎺ュ彛涓庢帴鍙 + 缁ф壙鍏崇郴锛屽彲浠ュ崟缁ф壙锛屼篃鍙互澶氱户鎵裤 + (5)鎶借薄绫诲拰鎺ュ彛鐨勫尯鍒? + A:鎴愬憳鍖哄埆 + B:鍏崇郴鍖哄埆 + C:璁捐鐞嗗康鍖哄埆 + 鎶借薄绫伙細鐖舵娊璞$被锛岄噷闈㈠畾涔夌殑鏄叡鎬у唴瀹广 + 鎺ュ彛锛氱埗鎺ュ彛锛岄噷闈㈠畾涔夌殑鏄墿灞曞唴瀹广 + (6)鎺ュ彛鐨勬渚嬶細 + A:鐚嫍妗堜緥鍔犲叆璺抽珮 + B:鑰佸笀鍜屽鐢熸渚嬪姞鍏ユ娊鐑 + C:鏁欑粌鍜岃繍鍔ㄥ憳妗堜緥鍔犲叆瀛﹁嫳璇 From dfca50a11e32ed869b0b4a7a79854e864e5aa376 Mon Sep 17 00:00:00 2001 From: Zhi <2308981443@qq.com> Date: Mon, 31 Jul 2017 15:39:36 +0800 Subject: [PATCH 4/5] =?UTF-8?q?Update=20day10=E6=80=BB=E7=BB=93.txt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "day10/day10\346\200\273\347\273\223.txt" | 134 +++++++++++----------- 1 file changed, 67 insertions(+), 67 deletions(-) diff --git "a/day10/day10\346\200\273\347\273\223.txt" "b/day10/day10\346\200\273\347\273\223.txt" index 2dff50f4..64707f3e 100644 --- "a/day10/day10\346\200\273\347\273\223.txt" +++ "b/day10/day10\346\200\273\347\273\223.txt" @@ -1,84 +1,84 @@ -1:形式参数和返回值问题(掌握) - (1)形式参数: - 基本类型:需要的是对应的值 - 引用类型: - 类:该类的对象 - 抽象类:该类的子类对象 - 接口:该接口的实现类对象 - (2)返回值问题: - 基本类型:返回的是对应的值 - 引用类型: - 类:该类的对象 - 抽象类:该类的子类对象 - 接口:该接口的实现类对象 - (3)链式编程 +1锛氬舰寮忓弬鏁板拰杩斿洖鍊奸棶棰(鎺屾彙) + (1)褰㈠紡鍙傛暟锛 + 鍩烘湰绫诲瀷锛氶渶瑕佺殑鏄搴旂殑鍊 + 寮曠敤绫诲瀷锛 + 绫伙細璇ョ被鐨勫璞 + 鎶借薄绫伙細璇ョ被鐨勫瓙绫诲璞 + 鎺ュ彛锛氳鎺ュ彛鐨勫疄鐜扮被瀵硅薄 + (2)杩斿洖鍊奸棶棰橈細 + 鍩烘湰绫诲瀷锛氳繑鍥炵殑鏄搴旂殑鍊 + 寮曠敤绫诲瀷锛 + 绫伙細璇ョ被鐨勫璞 + 鎶借薄绫伙細璇ョ被鐨勫瓙绫诲璞 + 鎺ュ彛锛氳鎺ュ彛鐨勫疄鐜扮被瀵硅薄 + (3)閾惧紡缂栫▼ new A().b().c().d(); -2:包(理解) - (1)其实就是文件夹 - (2)对类进行分类管理 - (3)格式: - package 包名; - (4)注意事项 - A:package是程序中的第一条可执行语句 - B:在类中package是唯一的 - C:没有package,默认是无包名 - (5)带包的类的编译和运行 +2锛氬寘(鐞嗚В) + (1)鍏跺疄灏辨槸鏂囦欢澶 + (2)瀵圭被杩涜鍒嗙被绠$悊 + (3)鏍煎紡锛 + package 鍖呭悕; + (4)娉ㄦ剰浜嬮」 + A:package鏄▼搴忎腑鐨勭涓鏉″彲鎵ц璇彞 + B:鍦ㄧ被涓璸ackage鏄敮涓鐨 + C:娌℃湁package锛岄粯璁ゆ槸鏃犲寘鍚 + (5)甯﹀寘鐨勭被鐨勭紪璇戝拰杩愯 -3:导包(理解) - (1)为了方便使用不同包下的类,需要导包 - (2)格式: - import 包名.报名...类名; +3锛氬鍖(鐞嗚В) + (1)涓轰簡鏂逛究浣跨敤涓嶅悓鍖呬笅鐨勭被锛岄渶瑕佸鍖 + (2)鏍煎紡锛 + import 鍖呭悕.鎶ュ悕...绫诲悕; - 注意:可以导入到*,但是不建议 - (3)package,import,class在类中有没有顺序关系呢? - 有。 + 娉ㄦ剰锛氬彲浠ュ鍏ュ埌*,浣嗘槸涓嶅缓璁 + (3)package锛宨mport锛宑lass鍦ㄧ被涓湁娌℃湁椤哄簭鍏崇郴鍛? + 鏈夈 package --> import --> class -4:修饰符(理解) - (1)4种权限修饰符 - 本类 同一个包下 不同包下的子类 不同包下的其他类 +4锛氫慨楗扮(鐞嗚В) + (1)4绉嶆潈闄愪慨楗扮 //鏈甯哥敤鐨勬槸private绫诲瀷鍜宲ublic绫诲瀷锛岄噸鐐规槸瀛愮被鐨勭户鎵挎 + 鏈被 鍚屼竴涓寘涓 涓嶅悓鍖呬笅鐨勫瓙绫 涓嶅悓鍖呬笅鐨勫叾浠栫被 private Y - 默认 Y Y + 榛樿 Y Y protected Y Y Y public Y Y Y Y - (2)常见的修饰 - A:类 public - B:成员变量 private - C:构造方法 public - D:成员方法 public + (2)甯歌鐨勪慨楗 + A:绫 public + B:鎴愬憳鍙橀噺 private + C:鏋勯犳柟娉 public + D:鎴愬憳鏂规硶 public -5:内部类(理解) - (1)把类A定义在类B内部,类A就被称为内部类 - (2)访问特点: - A:内部类可以直接访问外部类的成员,包括私有 - B:外部类要想访问内部类的成员,必须创建对象 - (3)内部类的分类: - A:成员内部类 - B:局部内部类 - (4)成员内部类 +5锛氬唴閮ㄧ被(鐞嗚В) //涓嶅父鐢 浣嗘槸鏄噸鐐癸紝闇瑕佷細浣跨敤 + (1)鎶婄被A瀹氫箟鍦ㄧ被B鍐呴儴锛岀被A灏辫绉颁负鍐呴儴绫 + (2)璁块棶鐗圭偣锛 + A:鍐呴儴绫诲彲浠ョ洿鎺ヨ闂閮ㄧ被鐨勬垚鍛橈紝鍖呮嫭绉佹湁 + B:澶栭儴绫昏鎯宠闂唴閮ㄧ被鐨勬垚鍛橈紝蹇呴』鍒涘缓瀵硅薄 + (3)鍐呴儴绫荤殑鍒嗙被锛 + A:鎴愬憳鍐呴儴绫 + B:灞閮ㄥ唴閮ㄧ被 + (4)鎴愬憳鍐呴儴绫 A:private B:static - 面试题: + 闈㈣瘯棰橈細 num this.num Outer.this.num - (5)局部内部类 - A:面试题 - 局部内部类访问局部变量,必须加final修饰 - (6)匿名内部类(掌握) - A:没有名字的内部类 - B:前提 - 存在一个类或者接口 - C:格式 - new 类名或者接口名() { - 重写方法(); + (5)灞閮ㄥ唴閮ㄧ被 + A:闈㈣瘯棰 + 灞閮ㄥ唴閮ㄧ被璁块棶灞閮ㄥ彉閲忥紝蹇呴』鍔爁inal淇グ + (6)鍖垮悕鍐呴儴绫(鎺屾彙) + A:娌℃湁鍚嶅瓧鐨勫唴閮ㄧ被 + B:鍓嶆彁 + 瀛樺湪涓涓被鎴栬呮帴鍙 + C:鏍煎紡 + new 绫诲悕鎴栬呮帴鍙e悕() { + 閲嶅啓鏂规硶(); }; - 本质:是一个匿名子类对象 - (7)开发中如何使用 - 不用在定义一个新的类了。直接通过匿名内部类的格式就可以搞定 + 鏈川锛氭槸涓涓尶鍚嶅瓙绫诲璞 + (7)寮鍙戜腑濡備綍浣跨敤 + 涓嶇敤鍦ㄥ畾涔変竴涓柊鐨勭被浜嗐傜洿鎺ラ氳繃鍖垮悕鍐呴儴绫荤殑鏍煎紡灏卞彲浠ユ悶瀹 interface Person { public abstract void show(); @@ -94,15 +94,15 @@ pd.method(new Person(){ public void show(){...} }); - (8)面试题 - 补齐代码,在控制台输出HelloWorld + (8)闈㈣瘯棰 + 琛ラ綈浠g爜锛屽湪鎺у埗鍙拌緭鍑篐elloWorld interface Inter { public abstract void show(); } class Outer { - //补齐代码 + //琛ラ綈浠g爜 public static Inter method() { return new Inter(){ public void show() { @@ -116,4 +116,4 @@ public static void main(String[] args) { Outer.method().show(); } - } \ No newline at end of file + } From 01e8b85368ae7592691ccd9f4dcfe271c6d6a929 Mon Sep 17 00:00:00 2001 From: Zhi <2308981443@qq.com> Date: Mon, 4 Sep 2017 10:19:16 +0800 Subject: [PATCH 5/5] Create MyNote --- MyNote | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 MyNote diff --git a/MyNote b/MyNote new file mode 100644 index 00000000..0cc9a4ae --- /dev/null +++ b/MyNote @@ -0,0 +1,4 @@ +1.java杈撳叆杈撳嚭娴佺殑鍩虹鏄疘nputStream鍜孫utputStream锛屾渶涓昏鐨勬柟娉曟槸 abstract int read锛堬級 鍜 abstract int write锛堬級 +鍏朵粬瀛愮被鍦ㄧ户鎵胯儭閮借閲嶅啓瑕嗙洊杩欎袱涓柟娉曘 +read鍜寃rite鏂规硶鍦ㄦ墽琛屾椂閮藉皢闃诲锛岀洿鑷冲瓧鑺傝璇诲叆鎴栨槸鍐欏嚭 杩欏氨鎰忓懗鐫濡傛灉娴佷笉琚珛鍗宠闂紙閫氬父鏄敱浜庣綉缁滆繛鎺ュ繖锛夛紝閭d箞褰撳墠绾跨▼灏嗚闃诲 +杩欎娇寰楄繖涓や釜鏂规硶绛夊緟鎸囧畾鐨勬祦鍙樹负鍙敤闃舵锛屽叾浠栫嚎绋嬪皢鏈夋満浼氬幓鎵ц鏈夌敤鐨勫伐浣溿