2017年2月16日

String类

摘要: 常见构造方法 • public String():空构造 • public String(byte[] bytes):把字节数组转成字符串 • public String(byte[] bytes,int index,int length):把字节数组的一部分转成字符串 • public Strin 阅读全文

posted @ 2017-02-16 19:01 LoaderMan 阅读(187) 评论(0) 推荐(0) 编辑

Object类

摘要: public int hashCode()方法 获取对象的哈希码值 * a:返回该对象的哈希码值。不是地址值,默认情况下,该方法会根据对象的地址来计算。 * b:不同对象的,hashCode()一般来说不会相同。但是,同一个对象的hashCode()值肯定相同。 hashcode 有啥用:这个哈希码 阅读全文

posted @ 2017-02-16 19:00 LoaderMan 阅读(115) 评论(0) 推荐(0) 编辑

Scanner类

摘要: Scanner的构造方法原理 • Scanner(InputStream source) • System类下有一个静态的字段: • public static final InputStream in; 标准的输入流,对应着键盘录入。 一般方法 • hasNextXxx() 判断是否还有下一个输入 阅读全文

posted @ 2017-02-16 19:00 LoaderMan 阅读(123) 评论(0) 推荐(0) 编辑

抽象类中注意事项

摘要: 一个类如果没有抽象方法,可不可以定义为抽象类?如果可以,有什么意义? 答:可以定义为抽象类,目的是不让其他类创建对象,不能实例化 abstract不能和哪些关键字共存,为什么? abstract 和 static 被 abstract 修饰 没有方法体 被 static 修饰,可以用类名.调用,但是 阅读全文

posted @ 2017-02-16 18:58 LoaderMan 阅读(198) 评论(0) 推荐(0) 编辑

抽象类和接口的区别

摘要: 成员区别 * 抽象类: * 成员变量:可以变量,也可以常量 * 构造方法:有 * 成员方法:可以抽象,也可以非抽象 * 接口: * 成员变量:只可以常量 * 成员方法:只可以抽象 关系区别 * 类与类 * 继承,单继承 * 类与接口 * 实现,单实现,多实现 * 接口与接口 * 继承,单继承,多继承 阅读全文

posted @ 2017-02-16 18:57 LoaderMan 阅读(157) 评论(0) 推荐(0) 编辑

接口

摘要: 概述 * 从狭义的角度讲就是指java中的interface * 从广义的角度讲对外提供规则的都是接口 定义接口的格式: interface 接口名 {} 特点: * a:接口用关键字interface表示 * interface 接口名 {} * b:类实现接口用implements表示 * cl 阅读全文

posted @ 2017-02-16 18:56 LoaderMan 阅读(147) 评论(0) 推荐(0) 编辑

类接口之间的关系

摘要: * 类与类继承(extends)的关系,只能是单继承 , 但是可以是多层继承 * 类与接口是实现(implements)的关系 , 可以是单实现, 也可以是多实现; 并且一个类在继承一个类的同时去实现多个接口 * 接口和接口是继承(extends)的关系 , 可以是单继承,也可以是多继承 阅读全文

posted @ 2017-02-16 18:56 LoaderMan 阅读(245) 评论(0) 推荐(1) 编辑

抽象类

摘要: 概述:抽象就是看不懂的 定义抽象类的格式: abstract class 类名 {} 定义抽象方法的格式: 修饰符 abstract 返回值类型 方法名称(参数列表) ; 特点: 1. 抽象类不能直接实例化,但是可以通过多态的形式对其进行间接实例化 2. 抽象类中不一定要存在抽象方法,但是如果一个类 阅读全文

posted @ 2017-02-16 18:55 LoaderMan 阅读(199) 评论(0) 推荐(0) 编辑

方法重写

摘要: 重写:子父类出现了一模一样的方法(注意:返回值类型可以是子父类,这个我们学完面向对象讲) 方法重写的应用: 当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法。 这样,即沿袭了父类的功能,又定义了子类特有的内容。 注意事项: * a:父类中私有方法不能被重写 因为父类私有方法 阅读全文

posted @ 2017-02-16 18:54 LoaderMan 阅读(187) 评论(0) 推荐(0) 编辑

多态

摘要: 概述:就是同一个事物在不同时刻表现出来的不同状态 前提: * 需要存在继承的关系 * 需要存在方法重写 * 需要存在父类的引用指向子类对象 父 f = new 子() ; 多态的形式访问类中的成员 * 成员变量 编译看左边 , 运行看左边 * 构造方法 子类在初始化的时候,都要默认调用父类无参的构造 阅读全文

posted @ 2017-02-16 18:54 LoaderMan 阅读(172) 评论(0) 推荐(0) 编辑

继承中构造方法中关系

摘要: 子类中所有的构造方法默认都会访问父类中空参数的构造方法 每一个构造方法的第一条语句默认都是:super() Object类最顶层的父类。 所有的构造方法的第一条语句默认是 super() ; Object: 是继承体系中的顶层父类,所有的类都是直接或者间接的继承该类 this(...) 和 supe 阅读全文

posted @ 2017-02-16 18:52 LoaderMan 阅读(172) 评论(0) 推荐(0) 编辑

继承

摘要: 让类与类之间产生关系,子父类关系 格式: class 子类 extends 父类 { } 好处: * 提高了代码的复用性 * 提高了代码的维护性 * 让类和类产生了关系,是多态的前提 弊端: 提高了的代码的耦合性 ; 开发的原则是: 高内聚 , 低耦合 * 耦合:类与类的关系 * 内聚:就是自己完成 阅读全文

posted @ 2017-02-16 18:50 LoaderMan 阅读(207) 评论(0) 推荐(0) 编辑

继承中成员的访问特点

摘要: 成员变量: 遵循一个"就近原则" this 和 super 的区别: this 代表的是本类对象的一个引用,谁来调用我,我就代表谁 super 代表的是父类对应的一个引用 * a:调用成员变量 * this.成员变量 调用本类的成员变量,也可以调用父类的成员变量 * super.成员变量 调用父类的 阅读全文

posted @ 2017-02-16 18:50 LoaderMan 阅读(521) 评论(0) 推荐(0) 编辑

代码块

摘要: 概述: 使用{ }括起来的代码 分类: 局部代码块 * 在方法中出现;限定变量生命周期,及早释放,提高内存利用率 构造代码块 (初始化块) * 在类中方法外出现;多个构造方法方法中相同的代码存放到一起,每次调用构造都会执行,并且在构造方法前执行 静态代码块 * 在类中方法外出现,并加上static修 阅读全文

posted @ 2017-02-16 18:49 LoaderMan 阅读(150) 评论(0) 推荐(0) 编辑

2017年2月15日

静态变量和成员变量的区别

摘要: 静态变量也叫类变量 成员变量也叫对象变量 所属不同 * 静态变量属于类,所以也称为为类变量 * 成员变量属于对象,所以也称为实例变量(对象变量) 内存中位置不同 * 静态变量存储于方法区的静态区 * 成员变量存储于堆内存 内存出现时间不同 * 静态变量随着类的加载而加载,随着类的消失而消失 * 成员 阅读全文

posted @ 2017-02-15 22:53 LoaderMan 阅读(244) 评论(0) 推荐(0) 编辑

构造方法的重载

摘要: 构造方法重载:方法名相同,与返回值类型无关(构造方法没有返回值),只看参数列表 构造方法注意事项 a:如果我们没有给出构造方法,系统将自动提供一个无参构造方法。 b:如果我们给出了构造方法,系统将不再提供默认的无参构造方法。 注意:这个时候,如果我们还想使用无参构造方法,就必须自己给出。 建议永远自 阅读全文

posted @ 2017-02-15 22:53 LoaderMan 阅读(505) 评论(0) 推荐(0) 编辑

成员变量的赋值方式

摘要: setXxx()方法 修改属性值 构造方法 给对象中属性进行初始化 阅读全文

posted @ 2017-02-15 22:52 LoaderMan 阅读(199) 评论(0) 推荐(0) 编辑

方法重载

摘要: 方法重载: * 概述: 允许在同一个类中,存在一个以上的同名方法,只要它们的参数列表不同 , 和返回值类型无关 简单的说: 在同一个类中,方法名相同,参数列表不同。与返回值类型无关。 参数列表不同: 参数的个数不同 参数的类型不同 阅读全文

posted @ 2017-02-15 22:51 LoaderMan 阅读(152) 评论(0) 推荐(0) 编辑

构造方法

摘要: 特点: 方法名称和类名系统 没有返回值类型,连void也没有 没有具体的返回值 作用: 对数据进行初始化的 注意事项: 构造方法也是有return语句的,格式是return; 如果我们没有给出构造方法,那么系统会提供一个无参的构造方法 如果我们给出了构造方法,那么系统就不会系统无参的构造方法 阅读全文

posted @ 2017-02-15 22:51 LoaderMan 阅读(164) 评论(0) 推荐(0) 编辑

方法

摘要: 作用: 用来提高代码的复用性 概述: 就是用来完成某一种功能的代码块 格式: 修饰符 返回值类型 方法名(参数类型 变量名1 , 参数类型变量名2 , ...) { 方法体 ; return 返回值 ; } 修饰符: public static 返回值类型: 用来限定方法的返回值的 , 本质上就是数 阅读全文

posted @ 2017-02-15 22:49 LoaderMan 阅读(137) 评论(0) 推荐(0) 编辑

main方法的详解

摘要: 格式 * public static void main(String[] args) {} 针对格式的解释 public 被jvm调用,访问权限足够大。 static 被jvm调用,不用创建对象,直接类名访问 void被jvm调用,不需要给jvm返回值 main 一个通用的名称,虽然不是关键字,但 阅读全文

posted @ 2017-02-15 22:49 LoaderMan 阅读(247) 评论(0) 推荐(0) 编辑

成员变量和局部变量的区别

摘要: 在类中的位置不同 * 成员变量: 在类中方法外 * 局部变量: 在方法声明上或者方法定义中 在内存中的位置不同 * 成员变量: 在堆内存中 * 局部变量: 在栈内存中 生命周期不同 * 成员变量: 随着对象的创建而产生,随着对象的消失而消失 * 局部变量: 随着方法的调用而产生,随着方法的消失而消失 阅读全文

posted @ 2017-02-15 22:48 LoaderMan 阅读(186) 评论(0) 推荐(0) 编辑

匿名内部类

摘要: ** 匿名内部类 * 它是局部内部类的简化格式 * 前提: 需要存在一个类或者接口 ; 这个类可以是抽象类, 也可以是非抽象类 ; * 格式: new 类名/接口名() { 方法重写 ; } ; * 本质: 就是一个继承某一个类或者实现某一个接口的子类对象 阅读全文

posted @ 2017-02-15 22:47 LoaderMan 阅读(351) 评论(0) 推荐(0) 编辑

匿名对象

摘要: 概述:没有名字的对象 应用场景 调用方法,仅仅只调用一次的时候。 匿名调用有什么好处吗? * 节省代码 * 注意:调用多次的时候,不适合。匿名对象调用完毕就是垃圾。可以被垃圾回收器回收。 匿名对象可以作为实际参数传递 问: 匿名对象是否可以调用属性并赋值?有什么意义? 匿名对象可以调用属性,但是没有 阅读全文

posted @ 2017-02-15 22:46 LoaderMan 阅读(138) 评论(0) 推荐(0) 编辑

创建对象的步骤

摘要: Student s = new Student() ; 1. 把Student.class加载到方法区 2. 在栈内存中为s开辟空间 3. 在堆内存中为new Student() 开辟空间 4. 给对象的成员变量进行默认初始化 5. 给对象的成员变量进行显式初始化 6. 调用构造方法对成员变量进行初 阅读全文

posted @ 2017-02-15 22:45 LoaderMan 阅读(184) 评论(0) 推荐(0) 编辑

内部类

摘要: 概述: 就是把一个类定义在另一个类中,那么这个类我们就将其称之为内部类 按照位置进行分类 * 成员内部类 就是把这个类定义在了成员位置(类中方法外的位置) *private: 提高数据的安全性 *static : 访问其他的类访问 *非静态的成员内部类被其他类创建对象的格式: 外部类名.内部类名 对 阅读全文

posted @ 2017-02-15 22:44 LoaderMan 阅读(291) 评论(0) 推荐(0) 编辑

类的使用

摘要: 使用步骤 1. 创建对象 ; 格式: 类名 对象名 = new 类名() ; 2. 访问成员变量 ; 格式: 对象名.变量名 前提就是这个成员变量不能被private修饰 3. 访问成员方法 ; 格式: 对象名.方法名(...) ; 对象内存图 ** 一个对象的内存图 目的: 告诉大家我们这个对象在 阅读全文

posted @ 2017-02-15 22:40 LoaderMan 阅读(178) 评论(0) 推荐(0) 编辑

封装

摘要: 封装概述 指隐藏对象的属性和实现细节,仅对外提供公共访问方式。 封装好处 隐藏实现细节,提供公共的访问方式 提高了代码的复用性 提高安全性 封装原则 将不需要对外提供的内容都隐藏起来 把属性隐藏,提供公共方法对其访问 阅读全文

posted @ 2017-02-15 22:39 LoaderMan 阅读(186) 评论(0) 推荐(0) 编辑

面向对象的思想

摘要: ** 就是指挥对象做事情 , 体现到代码上: 就是创建对象调用方法 ** 面向对象是基于面向过程的 ** 面向对象的三大特征: * 封装 * 继承 * 多态 类和对象 ** 类: 就是一组相关属性和行为的集合 ; 我们定义一个类,其实就是定义成员变量和成员方法 ** 对象: 就是该事物的一个具体的体 阅读全文

posted @ 2017-02-15 22:37 LoaderMan 阅读(164) 评论(0) 推荐(0) 编辑

Arrays工具类

摘要: 概述: 是数组工具类 , 其中提供了很多关于数组的相关操作 成员方法 public static String toString(int[] arr) ;返回指定数组内容的字符串表示形式。 public static void sort(int[] arr) ;//排序 public static 阅读全文

posted @ 2017-02-15 22:31 LoaderMan 阅读(190) 评论(0) 推荐(0) 编辑

可变参数

摘要: 阅读全文

posted @ 2017-02-15 22:30 LoaderMan 阅读(179) 评论(0) 推荐(0) 编辑

选择排序

摘要: public static void main(String[] args) { int[] arr = {24, 69, 80, 57, 13}; for (int i = 0; i arr[j]) { int temp = arr[i]; ... 阅读全文

posted @ 2017-02-15 22:29 LoaderMan 阅读(220) 评论(0) 推荐(0) 编辑

二分查找

摘要: public static void main(String[] args) { int[] arr = { 11, 22, 33, 44, 55, 66, 77 }; // 必须有序 System.out.println(getIndex(arr, 22)); } public static int getIndex(int[] arr, int ... 阅读全文

posted @ 2017-02-15 22:29 LoaderMan 阅读(258) 评论(0) 推荐(0) 编辑

冒泡排序

摘要: public static void main(String[] args) { int[] arr = {24, 69, 80, 57, 13}; for (int i = 0; i arr[j+1]) { int temp = arr[j]; ... 阅读全文

posted @ 2017-02-15 22:28 LoaderMan 阅读(240) 评论(0) 推荐(0) 编辑

对象数组

摘要: ** 概述: 就是用来存储对象的数组,数组和集合存储引用数据类型,存的都是地址值 ** 举例: Student[] s = new Student[3] ; 阅读全文

posted @ 2017-02-15 22:27 LoaderMan 阅读(150) 评论(0) 推荐(0) 编辑

二维数组

摘要: 概述: 就是一个数组 , 只不过每一个元素也是一个数组 定义格式: 第一种格式 数据类型[][] 数组名 = new 数据类型[m][n] ; (推荐使用) 数据类型[] 数组名[] = new 数据类型[m][n] ; 数据类型 数组名[][] = new 数据类型[m][n] ; m: 表示的意 阅读全文

posted @ 2017-02-15 22:26 LoaderMan 阅读(193) 评论(0) 推荐(0) 编辑

一维数组

摘要: 概述:就是一个用来存储同一种数据类型的元素的一个容器 格式: 数据类型[] 数组名 = new 数据类型[数组的长度] ; (推荐使用) 数据类型 数组名[] = new 数据类型[数组的长度] ; 数据类型: 作用:用来限定数组中存储元素的类型 数组名: 合法的标识符 数组的长度的作用: 用来限定 阅读全文

posted @ 2017-02-15 22:24 LoaderMan 阅读(176) 评论(0) 推荐(0) 编辑

循环语句注意事项

摘要: 三种循环语句的区别? * do...while循环至少执行一次循环体。 * for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。 for循环和while循环的区别: *如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。 不知道用谁就用for循 阅读全文

posted @ 2017-02-15 22:13 LoaderMan 阅读(416) 评论(0) 推荐(0) 编辑

控制跳转语句

摘要: break 应用场景: switch , 循环中 作用: 用来结束循环或者switch语句 continue 应用场景: 循环中 作用: 结束本次循环 , 执行下一次循环 return 作用: 结束方法的 阅读全文

posted @ 2017-02-15 22:10 LoaderMan 阅读(144) 评论(0) 推荐(0) 编辑

while循环

摘要: while 循环的格式: 初始化表达式语句 ; while(判断条件语句) { 循环体语句 ; 控制条件语句 ; } 执行流程: 1. 执行初始化表达式语句 2. 执行判断条件语句, 看其返回结果是true还是false , 如果是true,就继续执行, 如果是false , 就结束循环 3. 执行 阅读全文

posted @ 2017-02-15 22:09 LoaderMan 阅读(189) 评论(0) 推荐(0) 编辑

导航