java课程
烫烫烫烫烫烫烫
这个作者很懒,什么都没留下…
展开
-
java java面向对象-理解继承关系
20180311 java java面向对象-理解继承关系20180311 java java面向对象-理解继承关系继承关系的定义:基于某个父类 对对象的定义加以拓展,而产生的新的子类的定义子类可以继承父类原来的某些定义,也可以增加原来父类所没有的定义,或者覆盖父类中的某些特性。从面向对象的角度上说,继承是一种从一般到特殊的关系,是一种”is a”的关系,即子类是对父类的拓展,是一种特殊的父类,比...原创 2018-03-20 15:08:16 · 343 阅读 · 0 评论 -
java java面向对象-组合关系
20180317 java java面向对象-组合关系先回顾一下继承关系继承关系:子类可以继承到父类中部分的成员,那么此时子类是可以修改到父类的信息的。所以继承关系破坏了封装(即本身封装和继承关系就存在天然的矛盾性)。 为什么引入继承呢? 为了代码复用。而解决代码复用问题,不一定非要使用继承关系,也可以使用组合关系(又叫包含关系)。 继承关系叫 is a的关系;组合关系叫 has a的关系。...原创 2018-03-22 10:52:51 · 2838 阅读 · 0 评论 -
java java面向对象-代码块语句
20180318 java java面向对象-代码块语句什么是代码块:在类或方法中,直接使用花括号{}括起来的一块代码区域。代码块里的变量属于局部变量,只在自己所在区域区域( 前后花括号{} )内有效。根据代码块定义的位置不同,我们又分为三种形式:1、局部代码块:直接定义在方法内部的代码块;eg://代码块class CodeBlockDemo{ public static void main(...原创 2018-03-22 10:53:25 · 180 阅读 · 0 评论 -
java java面向对象-什么是接口和为什么需要接口
20180331 java java面向对象-什么是接口和为什么需要接口什么是接口:硬件接口:两个硬件设备之间的连接方式(显示器和主机之间 的通信,即是排线的接口),硬件接口既包括物理上的接口,还包括逻辑上的数据传输协议。软件接口:是程序代码,表示一种规范,是具有n个方法的特征集合。在java中,接口表示一种规范或一种约束,接口要求实现者必须遵循该规范(即用来约束使用者应该怎么做)。接口只定义了类...原创 2018-04-16 19:12:13 · 962 阅读 · 0 评论 -
java java面向对象-接口的定义和接口的成员
20180402 java java面向对象-接口的定义和接口的成员java中的接口是比抽象更抽象的类。公认的说法:多个抽象类的抽象就是接口。通俗的理解:在java中最小的程序单元就是类,接口就是特殊的类。java中的接口表示规范,用于定义一组抽象方法,表示某一类事物必须具备的功能 ,要求实现类必须来实现该接口并提供方法实现。定义类的语法: [public] class 类名[]定义...原创 2018-04-16 19:13:20 · 338 阅读 · 0 评论 -
java java面向对象-接口的特点和接口的继承
20180403 java java面向对象-接口的特点和接口的继承接口的特点:1)接口没有构造器,所以不能实例化,也不能显示定义构造器;2)接口只能继承接口,不能继承类,且接口支持多继承(java中类是单继承关系),多继承格式为:[修饰符] Interface 接口名 extends 接口1,接口2eg://爬行动物规范Interface IWalkable{ void walk();}//水...原创 2018-04-16 19:14:26 · 515 阅读 · 0 评论 -
java java面向对象-接口的实现关系
20180404 java java面向对象-接口的实现关系接口的实现者: 接口的实现者就是实现类,接口仅仅只是定义了某一类事物应该具有的某些功能,但是没有提供任何实现,此时,我们得提供类,再让该类去实现接口,并覆盖接口中的方法,从而实现类接口中定义的功能。类实现接口的语法:一个类可以实现多个接口,[修饰符] class (实现)类名 extends 父类 implements 接口1,接口2{....原创 2018-04-16 19:15:36 · 787 阅读 · 0 评论 -
java java面向对象-类和类以及类和接口的关系图
20180404 java java面向对象-类和类以及类和接口的关系图//水生动物规范Interface ISwimable{ void swim();} //爬行动物规范Interface IWalkable{ void swim();} //动物class Animal{...} //鱼class Fish extends Animal implementISwimable{ ...原创 2018-04-16 19:18:04 · 820 阅读 · 0 评论 -
java java面向对象-接口和抽象类的区别
20180406 java java面向对象-接口和抽象类的区别Interface Graph{ //求面积 Double getArea();}//圆class Circle implements Graph{ private Integer r;//半径 Circle (Integer r) { this.r = r; } //求面积 public Double getA...原创 2018-04-16 19:18:51 · 264 阅读 · 0 评论 -
java java面向对象-面向接口编程思想
20180407 java java面向对象-面向接口编程思想面向接口编程好处:充分体现了多态性,把实现类对象赋给接口类型变量,屏蔽了不同实现类之间的实现差异,从而可以做到通用编程。案例:使用USB设备来工作。不用接口的情况://鼠标class Mouse{ public void swapData() { System.out.println("鼠标在移动..."); }}//打印机...原创 2018-04-16 19:19:30 · 1121 阅读 · 0 评论 -
java java面向对象-字段不存在多态特征
20180317 java java面向对象-字段不存在多态特征以下是字段不存在多态特征的例子:eg:class SuperClass{ public String name = "Super.name"; public void doWork() { System.out.println("Super.doWork"); }}class SubClass extends Super...原创 2018-03-22 10:50:03 · 385 阅读 · 0 评论 -
java java面向对象-理解多态思想
20180315 java java面向对象-理解多态思想多态思想://普通动物class Animal{ public void eat { System.out.prinyln("吃一般的食物"); }}//狗class Dog extends Animal{ public void eat { System.out.println("吃骨头"); }}//猫class...原创 2018-03-22 10:49:01 · 385 阅读 · 0 评论 -
java java面向对象-方法覆盖
20180312 java java面向对象-方法覆盖场景:当父类的方法不适合子类的特征的时候,应该采取方法覆盖:eg:class Bird{ public void fly{ System.out.println("飞"); }}//企鹅类class Penguin extends Bird{ //重新定义了fly() public void fly{ System.out....原创 2018-03-20 15:10:57 · 756 阅读 · 0 评论 -
java java面向对象-方法重载和方法覆盖的区别
20180312 java java面向对象-方法重载和方法覆盖的区别本身二者一点关系都没有,仅仅只是名字很像而已,方法重载:overload方法覆盖:override方法重载:解决了同一个类中一类功能的方法的区分问题。既然是相同的功能,那么方法的名字就相同,只有一个类。规则:两同一不同:同类中,方法名相同,方法的参数列表不同。方法覆盖:解决子类继承父类之后,可能父类的某一个方法不满足子类的具体特...原创 2018-03-20 15:11:23 · 651 阅读 · 0 评论 -
java java面向对象-理解super关键字
20180312 java java面向对象-理解super关键字201803120 java java面向对象-理解super关键字需求:在子类的某一个方法中,调用父类被覆盖的方法(解除覆盖)//鸟类class Bird extends Object{ public void fly() { System.out.println(”我会飞”); }}//企鹅class Penguin...原创 2018-03-21 09:26:42 · 228 阅读 · 0 评论 -
java java面向对象-子类继承父类的哪些成员
20180312 java java面向对象-子类继承父类的哪些成员先写父类还是先写子类?答:不一定,一般地,我们在实际开发工程时,先编写多个自定义的类,写完之后,发现多个类之间存在共同的代码,此时可以抽出一个父类;我们以后做开发,都是基于框架/组件来做的,我们是在别人的基础上继续做开发,即我们定义的类会继承于框架中/组件中提供的父类。子类继承自父类后,子类可以拥有父类的某一些状态和行为,即子类复...原创 2018-03-21 09:27:09 · 4165 阅读 · 1 评论 -
java java面向对象-super应用场景和各种隐藏现象
20180313 java java面向对象-super应用场景和各种隐藏现象什么时候我们使用super关键字呢?1、子类隐藏了父类的字段,该情况我们一般不讨论,因为子类隐藏了父类的字段,破坏了封装。eg:class SuperClass{public String name = "SuperClassName";}class SubClass{ public int name = 18;//隐...原创 2018-03-21 09:29:08 · 666 阅读 · 0 评论 -
java java面向对象-子类初始化过程
20180313 java java面向对象-子类初始化过程class Animal{private: String name; private int age; Animal() { System.out.println("Animal 构造器"); }}//鱼class Fish extends Animal{private: String color;//颜色 //这...原创 2018-03-21 09:29:34 · 275 阅读 · 0 评论 -
java java面向对象-Object类和常用方法
20180314 java java面向对象-Object类和常用方法Object类是java语言的根类,它要么是一个类的直接父类,要么是一个类的简介父类。比如我们声明有个ABC类:class ABC{}其实等价于:class ABC extends Object{}所有对象(包括数组)都实现这个类的方法,这句话如何理解?Object本身就是指对象的意思,我们发现所有的对象都具有某一些共同的行为,...原创 2018-03-21 09:31:33 · 168 阅读 · 0 评论 -
java java面向对象-多态的好处
20180315 java java面向对象-多态的好处需求:给饲养员提供一个喂养动物的方法。没有多态的情况://饲养员class Person{ //喂养狗的方法 public void feed(Dog d) { System.out.prinyln("feeding..."); } //喂养猫的方法 public void feed(Cat c) { System....原创 2018-03-22 10:48:02 · 5842 阅读 · 2 评论 -
java java面向对象-多态时方法的调用问题
20180315 java java面向对象-多态时方法的调用问题在多态时方法调用问题的前提是 必须存在多态情况,即子类对象赋给父类变量。存在父类:SuperClass 子类 SubClass 方法:doWork//父类class SuperClass{}//子类class SubClass extends SuperClass{}class MethodCallDemo{ public sta...原创 2018-03-22 10:48:37 · 1380 阅读 · 0 评论 -
java java面向对象-内部类概述
20180407 java java面向对象-内部类概述内部类:定义在类结构中的另外一个类。eg:public class Out//这个就叫做外部类{ public class In//这个就是内部类 { }}外部类也叫做宿主类内部类也叫做嵌套类为什么使用内部类:(1)增强封装,将内部类隐藏在外部类之中,不许其他类访问该类(这个特点使用范围最广);(2)内部类能提高代码的可读性和可维护性,...原创 2018-04-17 09:04:59 · 147 阅读 · 0 评论 -
java java面向对象-局部内部类分析
20180410 java java面向对象-局部内部类分析/************************************//**** 千万不要用局部内部类 ****//************************************/局部内部类的定义:在方法中定义的内部类,其可见范围就是在当前方法中,局部内部类是和 当前方法中的变量 同一级别的。eg:class...原创 2018-04-17 09:08:38 · 175 阅读 · 0 评论 -
java java面向对象-匿名内部类分析
20180410 java java面向对象-匿名内部类分析匿名内部类的定义:就是没有名称的局部内部类,适用于只使用一次的类。在开发中经常有这样的类,只需要定义一次,使用一次,就可以丢弃了。此时就不应该把这种类定义在文件中。再javaSE的事件中 或在安卓的事件处理中 这种类用的较多。eg:不同的按钮 点击之后会有不同的响应操作,事件响应的代码 就不需要放在文件中定义。这样 就首选 匿名内部类。匿...原创 2018-04-17 09:09:14 · 204 阅读 · 0 评论 -
java java面向对象-枚举枚举的定义和特点以及底层分析
20180412java java面向对象-枚举枚举的定义和特点以及底层分析枚举是从java5开始提供的一种新的数据类型,枚举是一个特殊的类。枚举就是多个常量对象的集合(常量的数量是固定的)。枚举的定义的格式:[修饰符] enum 枚举类名{ 常量A, 常量B, 常量C, ...}eg:enum Weekday{ Mon,Tues,Wednes,Thur,Fri,Sat,Sun}clas...原创 2018-05-02 17:19:52 · 305 阅读 · 0 评论 -
java java面向对象-枚举的操作细节
20180415 java java面向对象-枚举的操作细节20180415 java java面向对象-枚举的操作细节枚举的使用:1、枚举中的都是全局的、公共的静态常量,可以直接使用枚举类名调用,使用以下格式接受:类名 接受名称=类名.常量名;Weekday day = Weekday.Friday;2、因为 java.lang.Enum类是所有枚举类的父类,所以所有的枚举对象都可以调用 En...原创 2018-05-02 17:23:53 · 175 阅读 · 0 评论 -
java java基本工具-java开发工具介绍和Eclipse概述
20180416 java java基本工具-java开发工具介绍和Eclipse概述Eclipse(集成开发环境):是一个开放源代码的、基于Java的可扩展的开发平台。开发Eclipse的语言是java。运行java软件必须得有JRE或JDK。Eclipse(32位) + JDK(32位)或Eclipse(64位) + JDK(64位)Eclpise也可以开发C/C++、COBOL、PHP、安卓...原创 2018-05-02 17:24:24 · 511 阅读 · 0 评论 -
java java基本工具-开发中命名的规范概述
20180416 java java基本工具-开发中命名的规范概述注重的编码规范(简单):起名的规范:-------------------------------------------------------1) 不能以关键字、保留字, 作为名称;不能以数字开头;2)不能使用拼音,或拼音的首字母,统统都使用英文单词,或者使用英文组合单词;3)采用驼峰表示法,使用组合单词的时候,以后的每一个单词...原创 2018-05-02 17:24:58 · 368 阅读 · 0 评论 -
java java面向对象-引用类型转换和instanceof运算符
20180317 java java面向对象-引用类型转换和instanceof运算符20180317 java java面向对象-引用类型转换和instanceof运算符基本数据类型的转换:自动类型转换:把小类型的数据赋给大类型变量(这里的大和小指 容量范围)byte b=12;//byte是一个字节int i=b;//int是四个字节强制类型转换:把大类型的数据赋给小类型的变量short s=...原创 2018-05-03 18:21:17 · 295 阅读 · 0 评论 -
java java基本工具-为什么得有编程规范
20180416 java java基本工具-为什么得有编程规范为什么要有编码规范:编码规范对于程序开发人员尤为重要:1、 一个软件的生命周期,80%的时间都花费在维护上(改BUG 和 增加新的功能)2、几乎没有任何软件,在其整个生命周期中,都是由最初的开发人员来维护。3、编码规范可以改善软件的可读性,4、为了执行规范,每个软件开发人员必须一致遵守编码规范,包括每个人。推荐阅读资料:SUN Jav...原创 2018-05-03 18:22:03 · 303 阅读 · 0 评论 -
java java基本工具-Eclipse常用的快捷键
20180418 java java基本工具-Eclipse常用的快捷键参考文章:eclipse快捷键及各种设置几个重要的快捷键:代码助手:Alt+/快速修正:Ctrl+1删除选中的行:Ctrl+D组织导入:Ctrl+Shift+O格式化代码:Ctrl+Shift+F查找某个类的源代码:Ctrl+点进去快速Outline:Ctrl+O打开继承体系:Ctrl+T打开资源:Ctrl+Shift+R打开...原创 2018-05-03 18:25:04 · 269 阅读 · 0 评论 -
java java基本工具-Eclipse基本使用
20180418 java java基本工具-Eclipse基本使用在类中使用:public,protected,default,private去修饰字段或函数,所表示的意思:public:公有的;protected:子类访问权限default:包访问权限private:私有的...原创 2018-05-03 18:25:39 · 317 阅读 · 0 评论 -
java java知识点-访问权限(public private protected)
20180418 java java知识点-访问权限(public private protected)在类中使用:public,protected,default,private去修饰字段或函数,所表示的意思:public:公有的;protected:子类访问权限default:包访问权限private:私有的...原创 2018-05-03 18:26:16 · 317 阅读 · 0 评论 -
java 引出模板方法设计模式
20180329 java 引出模板方法设计模式需求:统计不同操作的耗时时间模板操作。//String连接1万次class StringOperate{ public long doWork() { long begin = System.currentTimeMillis();//开始时间 String str = ""; for(int i=0;i < 10000;...原创 2018-04-13 16:04:04 · 126 阅读 · 0 评论 -
java java面向对象-分析模板方法设计模式
20180329 java java面向对象-分析模板方法设计模式模板方法设计模式定义:在父类的一个方法中定义一个总体算法的骨架,而将某一些步骤延迟到子类中,因为不同的子类实现细节不同,模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。抽象父类负责定义操作中的业务骨架,而把某些具体的实现步骤延迟到子类中去实现。抽象父类至少提供的方法:1)模板方法:一种通用的处理方法,即模板(...原创 2018-04-13 16:03:41 · 148 阅读 · 0 评论 -
java java面向对象-实例内部类和静态内部类分析
20180410 java java面向对象-实例内部类和静态内部类分析内部类看做是外部类的一个成员,内部类和 外部类里的字段 是一个层级。所以内部类可以使用public修饰,也可以使用缺省修饰符修饰,也可以使用protected修饰符修饰,也可以使用private修饰符修饰,也可以使用static修饰。而外部类的修饰符只能是两种:public修饰的 或 缺省修饰符修饰的。现在说重点了,/****...原创 2018-04-17 09:09:50 · 246 阅读 · 0 评论 -
java java面向对象-工具类的设计
20180321 java java面向对象-工具类的设计工具类定义:存放了某一类事物的工具方法的类。工具类存放的包:工具包(util或utils或tool或tools或helper或helpers)存放工具类工具类的起名:xxxUtil或xxxUtils或xxxTool或xxxTools或xxxHelper或xxx.helpers,如数组的工具类就是ArrayUtil。工具类如何设计:工具类在开...原创 2018-03-29 11:12:33 · 1315 阅读 · 0 评论 -
java java面向对象-装箱和拆箱操作
20180322 java java面向对象-装箱和拆箱操作java中的8大包装类:---------------------------------基本数据类型 | 包装类 |----------------|---------------|byte | Byte |----------------|--------------...原创 2018-03-29 11:14:07 · 467 阅读 · 0 评论 -
java java面向对象 包装类的常见操作
20180323 java java面向对象 包装类的常见操作Integer包装类的属性:隶属包名是: java.lang所属类为: Integer继承体系为: java.lang.Object java.lang.Number java.lang.Integer包装类的常用操作方法:1、包装类中的常量: MAX_VALUE/MIN_VALUE,SIZE(表示在...原创 2018-03-29 11:15:45 · 297 阅读 · 0 评论 -
java java面向对象-Integer与int的区别
20180326 java java面向对象-Integer与int的区别20180326 java java面向对象-Integer与int的区别这里讨论的 Integer与int的区别 也可以引申为包装类型与基本数据类型的区别区别:1)默认值 int的默认值为0; Integer的默认值为null(作为成员变量使用的时候)。推论:Integer既可以表示null又可以表示0。eg:Inte...原创 2018-03-29 11:17:15 · 307 阅读 · 0 评论