摘要: 普通初始化块 一个类里可以有多个初始化块,相同类型的初始化块之间有顺序:前面定义的先执行,后面定义的后执行。 初始化块的修饰符只能是static,使用static修饰的初始化块被称为静态初始化块。 普通初始化块、声明实例属性指定的默认值都可认为是对象的初始化代码,执行顺序与声明顺序相同。 当Java 阅读全文
posted @ 2017-01-18 22:41 coder为 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 当把一个子类对象直接赋给父类引用变量时,编译时类型是父类类型,运行时类型是子类类型。当运行时调用该引用变量的方法时,其方法行为总是子类方法的行为,而不是父类方法行为,所以就出现了相同类型的变量,执行同一个方法时出现不同的行为特征,这就是多态。也就是说程序中定义的引用变量所指向的具体类型和通过该引用变 阅读全文
posted @ 2017-01-18 22:25 coder为 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 一 方法的参数传递机制 Java方法的参数传递方式只有一种:值传递。就是将实际参数值的副本传入方法内,而参数本身不会受到任何影响。 eg. 基本类型的值传递 输出结果: in swap(), a =9 b =6after swap(), a =6, b =9 所以main方法中的a和b,并不是swa 阅读全文
posted @ 2017-01-16 09:58 coder为 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 一 流程控制 if分支语句 使用if...else语句时,一定要优先处理包含范围更小的情况。 switch分支语句 switch语句后面的控制表达式的数据类型只能使byte,short,char,int四个整数类型和枚举类型,不能是boolean类型。Java7新增允许switch语句中的控制表达式 阅读全文
posted @ 2017-01-13 09:51 coder为 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 一 注释 单行注释:// 多行注释:/* */ 文档注释:/** */ 由于只有public或protected修饰的内容才是希望暴露给别人使用的内容,而API文档主要是向使用者提供信息,因此javadaoc默认只处理public或protected修饰的内容,如果开发者确实希望javadoc工具可 阅读全文
posted @ 2017-01-13 08:30 coder为 阅读(245) 评论(0) 推荐(0) 编辑
摘要: “基于对象”也使用了对象,但是无法利用现有的对象模板产生新的对象类型,继而产生新的对象,也就是说,“基于对象”没有继承的特点,而多态更需要继承,所以“基于对象”也没有多态的特点。 “面向对象”的三大基本特征(封装,继承,多态)缺一不可。 判断两者的区别,就是看是否有继承和多态的特征。 例如,Java 阅读全文
posted @ 2017-01-05 14:47 coder为 阅读(176) 评论(0) 推荐(0) 编辑
摘要: JDK: Java SE Development Kit, Java标准版开发包。包括Java编译器,JRE,以及常用的Java类库等。 JRE: Java Runtime Environment,运行Java程序的必需条件。 Question:JVM是运行Java程序的虚拟机,JRE和JVM的关系 阅读全文
posted @ 2017-01-04 18:10 coder为 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 1. 运行机制 Java源文件(*.java) 使用javac编译 编译成*.class文件 使用java解释执行 特定平台的机器码 2. 原理 负责解释执行字节码文件的就是JVM。 所有平台上的JVM向编译器提供相同的编程接口,所以*.class文件都一致,与平台无关。而不同平台的JVM都是不同的 阅读全文
posted @ 2017-01-04 10:54 coder为 阅读(193) 评论(0) 推荐(0) 编辑
摘要: Java类只能有一个直接父类,Java类可以有无限多个间接父类。如果定义一个Java类时并未显式指定这个类的值接父类,则这个类默认扩展java.lang.Object类。因此,java.lang.Object类是所有类的父类,要么是其直接父类,要么是其间接父类。 重写父类方法 方法的重写要遵循“两同 阅读全文
posted @ 2016-12-31 13:24 coder为 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 修饰符 import import语句中的星号只能代表类,不能代表包,因此使用import lee.*语句时,它表明导入lee包下的所有类,而lee包下sub子包内的类则不会被导入,如需导入lee.sub.Apple类,则可以使用import lee.sub.*语句来导入lee.sub包下的所有类。 阅读全文
posted @ 2016-12-31 13:23 coder为 阅读(177) 评论(0) 推荐(0) 编辑