摘要: 初始化块 Java使用构造器来完成状态初始化,与构造器类似的是初始化块 创建Java对象时,总是先调用初始化块,如果有多个块,则按照顺序依次执行,初始化总是在创建Java对象时隐式的执行,并在构造器之前执行 阅读全文
posted @ 2016-10-05 23:48 巧克力曲奇 阅读(160) 评论(0) 推荐(0) 编辑
摘要: java引用变量有两个类型,一个是编译时类型,一个是运行时类型。编译时由申明该变量时候使用的类型决定,比如Fruit duotai;运行时由实际赋给该变量的对象决定,比如duotai=new Apple();这就呈现了多态。 因为子类是个特殊的父类,所以可以把子类直接赋给父类引用变量,无需任何强制类 阅读全文
posted @ 2016-10-05 23:00 巧克力曲奇 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 调用父类构造器 子类不会获得父类构造器,但是子类构造器里面可以调用父类构造器初始化代码类似于一个构造器调用另外一个构造器: 类似于一个构造器调用另外一个构造器使用this做关键字,在子类调用父类用super作关键调用 创建任何对象总是从该类的继承树顶层构造器开始执行,然后往下,一直到本类的构造器 阅读全文
posted @ 2016-10-05 17:25 巧克力曲奇 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 继承 extends是拓展的意思,而不是继承。即子类是父类的拓展,子类是一种特殊的父类。(子类不能继承构造器) 继承父类例如 很好理解 重写父类方法 此事执行的就不是父类的info方法了,即子类覆盖了父类的方法,也叫方法重写Override 重写方法遵循“两同两小一大” 两同:方法名,形参列表 两小 阅读全文
posted @ 2016-10-05 17:02 巧克力曲奇 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 封装 访问控制符优先级private->default->protected->public private(当前类访问权限):只能在当前类的内部被访问 default:包访问权限如果一个类的成员或者外部类不适用任何修饰符,则它是包访问权限。可以被相同包下面的其他类访问 package,import 阅读全文
posted @ 2016-10-05 16:27 巧克力曲奇 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 方法 方法不能独立定义,方法智囊在类体里定义 方法要么属于类本身,要么属于类的一个对象,类里面调用方法,其实也是对象调用(this) 不能独立执行方法,必须使用类或者对象作为调用者(同上) 形参个数可变 在最后一个形参类型后面增加三个点(...),表示该形参可接受多个参数值,被当成数组传入 例如 c 阅读全文
posted @ 2016-10-05 16:21 巧克力曲奇 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 类 【修饰符】class MyClass (首字母大写,其余全部小写 { 零到多个构造器 (一旦程序员为一个类提供了构造器,系统将会不在为该类提供默认构造器 零到多个成员变量 (首单词字母小写,其余单词首字大写 零到多个方法 } static修饰符的成员不能访问没有static修饰的成员,毕竟没有实 阅读全文
posted @ 2016-10-05 16:03 巧克力曲奇 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 数组 一旦数组初始化完成,在内存中所占空间将会被固定下来,长度不变,元素清空,空间仍然被保留 java支持两种语法来定义数组 int[] arrayName;推荐使用 int arrayName[]; 此时只是定义了一个引用变量,并未有效的内存空间,还需要初始化才能使用(定义数组时候不能指定数组的长 阅读全文
posted @ 2016-10-05 11:04 巧克力曲奇 阅读(138) 评论(0) 推荐(0) 编辑
摘要: byte : 内存占8位 -128 ~ 127short: 内存占16位 -2(15)~ 2(15)-1int: 内存占32位 -2(31)~2(31)-1long:内存占64位 -2(63) ~ 2(63)-1 把一个较小的int赋值给byte 或者short(在此值内) 系统会把它按照byte或 阅读全文
posted @ 2016-10-05 11:03 巧克力曲奇 阅读(352) 评论(0) 推荐(0) 编辑