01 2018 档案
摘要:字符流:FileReader FileWriter BufferedReader BufferedWriter 字节流:InputStream 读OutputStream 写 复制一张图片 思路: 1.用字节读取流和图片关联 2.用字节写入流对象创建一个图片文件,用于存储获取到的图片数据 3.通过循
阅读全文
摘要:流按操作数据分为两种:字节流和字符流 字节流的抽象基类:InputStream OutputStream 字符流的抽象基类:Reader Writer流按流向分为:输入流和输出流 字符流的特点:既然IO流是用于操作数据的。那么先以操作文件为主来演示。需求:在硬盘上,创建一个文件并写入一些文字数据。
阅读全文
摘要:Map集合:该集合存储键值对。一对一对往里存,而且要保证键的唯一性。每个键最多只能映射到一个值。 1.添加 put(K key,V value) putAll(Map<? extends K,? extends V> m) 2.删除 clear() remove(Object key) 3.判断 c
阅读全文
摘要:--Set:元素是无序(存入和取出的顺序不一定一致)的,元素不可以重复 --HashSet:底层数据结构是哈希表 --TreeSet:底层数据结构是二叉树。Set集合的功能和Collection是一致的。 往hashSet集合中存入自定义对象,姓名年龄相同者为同一个人,重复元素 --HashSet:
阅读全文
摘要:集合和数组都是存储对象的。数组长度固定,可以存储基本数据类型集合长度可变,只能存储对象 1.add方法的参数类型是Object,以便于接收任意类型对象。2.集合中存储的都是对象的引用(地址) 什么是迭代器呢?其实就是集合的取出元素的方式。 Collection --List:元素是有序的,元素可以重
阅读全文
摘要:StringBuffer 是字符串缓冲区 可以对字符串进行增删 是一个容器 特点: 1.可变长度 2.可以直接操作多个数据类型 3.最终会通过toString()方法变成字符串 1.存储 StringBuffer append():将制定数据作为参数添加到已有数据结尾处 StringBuffer i
阅读全文
摘要:进程:正在执行中的程序 每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或者叫一个控制单元线程:就是进程中一个独立的控制单元,线程在控制进程的执行。 一个进程中至少有一个线程。 java jvm启动的时候会有一个进程java.exe该进程中至少有一个线程负责java程序的执行。而且这个线程运行
阅读全文
摘要:一.异常:就是程序在运行时出现不正常情况。异常由来:问题也是现实生活中一个具体的事物,也可以通过Java类的形式进行描述,并封装成对象。 其实就是java对不正常情况进行描述后的对象体现。对于问题的划分: 1.严重的问题:java通过error类进行描述 对于error一般不编写针对性的代码进行处理
阅读全文
摘要:内部类的访问规则: 1.内部类可以直接访问外部类中的成员,包括私有 之所以可以直接访问外部类中的成员,是因为内部类中持有了一个外部类的引用,格式:外部类名.this 2.外部类要访问内部类,必须建立内部类对象访问格式: 1.当内部类定义在外部类的成员位置上,而且非私有,可以在外部其他类中直接建立内部
阅读全文
摘要:Object:是所有对象的直接或者间接父类,传说中的上帝。 该类中定义的肯定是所有对象都具备的方法。 Object类中已经提供了对对象是否相同的比较方法 如果自定义类中也有比较相同的功能,没有必要重新定义 只要沿袭父类中的功能,建立自己特有的比较内容即可,这就是覆盖 toString() 打印类名@
阅读全文
摘要:需求:数据库的操作数据是用户信息1.连接数据库 JDBC Hibernate2.操作数据库 c create r read u update d delete3.关闭数据库连接
阅读全文
摘要:在多态中成员函数(非静态)的特点: 在编译时期:参阅引用型变量所属的类中是否有调用的方法。如果有,编译通过,如果没有,编译失败。 在运行时期:参阅对象所属的类中是否有调用的方法。 简单总结就是:成员函数在多态调用时,编译看左边,运行看右边。 在多态中成员变量的特点: 无论编译还是运行,都参考左边(引
阅读全文
摘要:基础班的学生: 学习,睡觉高级班的学生: 学习,睡觉可以将这两类事物进行抽取
阅读全文
摘要:public class DuoTai_ZhuanXing_02 { public static void main(String[] args) { // TODO Auto-generated method stub //Animal c=new Cat(); //类型提升。向上转型 //c.eat(); //如果想要调用猫的特有方法时,如何操作? //强制将父...
阅读全文
摘要:多态:可以理解为事物存在的多种体现形态。 人:男人,女人 动物:猫,狗 猫 x=new 猫 (); 动物 x=new 猫(); 1.多态的体现 父类的引用指向子类的对象 父类的引用也可以接收 2.多态的前提 必须是类与类之间有关系,要么有继承关系,要么有实现关系 通常还有个前提:存在覆盖。 3.多态
阅读全文
摘要:接口的特点: 接口是对外暴露的规则 接口是程序的功能扩展 接口可以用来多实现 类与接口之间是实现关系,而且类可以继承一个类的同时实现多个接口 接口与接口直接可以有继承关系
阅读全文
摘要:接口:初期理解,可以认为是一个特殊的抽象类 当抽象类中的方法都是抽象的,该类可以通过接口的形式来表示class用于定义类,interface用于定义接口 接口定义时,格式特点: 1.接口中常见定义:常量,抽象方法 2.接口中的成员都有固定修饰符。 常量:(public statci final) 方
阅读全文
摘要:需求:获取一段程序运行的时间。原理: 获取程序开始和结束的额时间并相见即可 获取时间:System.currentTimeMillis(); 当代码完成优化后,就可以解决这类问题。这种方式,叫模板方法设计模式。 什么是模板方法呢? 在定义功能时,功能的一部分是确定的,但是有一部分是不确定的,而确定的
阅读全文
摘要:假如我们在开发一个系统时需要对员工进行建模,员工包含3个属性:姓名、工号和工资。经理也是员工,除了含有员工的属性外,另外还有一个奖金属性,请使用继承的思想设计出员工类和经理类。要求类中提供必要的方法进行属性访问 员工类:name id pay经理类:继承了员工,并有自己特有的bonus
阅读全文
摘要:当多个类中出现相同功能,但是功能主体不同,这时可以进行向上抽取,这时只抽取功能定义,不抽取功能主体 抽象:看不懂 抽象类的特点: 1.抽象方法一定在抽象类中。 2.抽象方法和抽象类都必须被abstract关键字修饰 3.抽象类不可以用new创建对象,因为调用抽象方法没意义。 4.抽象类中的抽象方法要
阅读全文
摘要:final:最终。最为一个修饰符, 1.可以修饰类、函数、变量 2.被final修饰的类不可以被继承,为了避免被继承,被子类复写功能。 3.被final修饰的方法不可以被复写 4.被final修饰的变量是一个常量,只能赋值一次,既可以修饰成员变量,也可以修饰局部变量。 当在描述事物时,一些数据的出现
阅读全文
摘要:子父类出现后,类中成员的特点: 类中成员: 1.变量 如果子类中出现非私有的同名成员变量时,子类要访问本类中的变量用this,子类要访问父类中的同名变量用super super的使用和this的使用几乎一致,this代表本类对象的引用,super代表父类对象的引用 2.函数 当子类出现和父类一模一样
阅读全文
摘要:继承: 1.提高了代码的复用性 2.继承让类与类之间产生了关系,有了这个关系,才有了多态的特性 注意: 千万不要为了获取其他类的功能,简化代码而继承。 必须是类与类之间有所属关系才可以继承。所属关系:is a java语言中,只支持单继承,不支持多继承因为多继承容易带来安全隐患: 当多个父类中定义了
阅读全文
摘要:静态:static用法:是一个修饰符,用于修饰成员(成员变量,成员函数)。 当成员被静态修饰后,就多了一个调用方式,除了可以被对象调用外,还可以直接被类名调用,类名.静态成员 static特点: 1.静态随着类的加载而加载 也就是说,静态会随着类的消失而消失,说明它的声明周期最长 2.优先于对象存在
阅读全文
摘要:this:看上去,是用于区分局部变量和成员变量同名的情况。this为什么可以解决这个问题?this代表什么? this: this代表本类的对象。 this代表它所在函数所属对象的引用。 简单说,哪个对象在调用this所在的函数,this就代表哪个对象。 this的应用: 当定义类中功能时,该函数内
阅读全文
摘要:构造函数 特点: 函数名与类名相同 不用定义返回值类型 不可以写return语句 对象一建立就会调用与之对应的构造函数 作用: 给对象进行初始化 小细节: 当一个类中没有定义构造函数时,系统会默认给该类加入一个空参数的构造函数 Person(){} 在类中自定义了构造函数,默认的构造函数就没了 构造
阅读全文
摘要:面向对象三个特征:封装 继承 多态 成员变量和局部变量: 作用范围: 成员变量作用于整个类中,局部变量作用于函数中或语句中 在内存中的位置: 成员变量在堆内存中,因为对象的存在才在内存中存在 局部变量在栈内存中。 匿名对象使用方式一:当对对象的方法只调用一次时,可以用匿名对象来完成。这样写比较简化。
阅读全文
摘要:package day04; public class ErWei_07 { /** 数组格式: 一维: int []x int x[] 二维: int [][]y int []y[] int y[][] */ public static void main(String[] args) { // TODO Auto-generated method stub ...
阅读全文
摘要:package day04; public class ShuZu_MaoPaoPaiXu_05 { /** 冒泡排序:相邻的两个元素进行比较,如果符合条件换位 第一圈:最值出现在最后位 */ public static void main(String[] args) { // TODO Auto-generated method stub int [] arr={3,2,1,6...
阅读全文
摘要:获取数组中的最大值思路: 1.获取最值需要进行比较。每一次比较都会有一个较大的值。因为该值不确定,通过一个变量进行存储 2.让数组中的每一个元素都和这个变量中的值进行比较,如果大于了变量中的值,就用该变量记录较大值 3.当所有的元素都比较完成,那么该变量中存储的就是数组中的较大值了 步骤: 1.定义
阅读全文
摘要:package day04; public class ShuZu_XuanZePaiXu_04 { /** 选择排序(第一个数挨个跟后面的数比较) 内循环结束一次,最值出现在头角标位置上 */ public static void main(String[] args) { // TODO Auto-generated method stub int []arr={3,1,4,...
阅读全文
摘要:package day04; public class ShuZu_BianLi_02 { public static void main(String[] args) { // TODO Auto-generated method stub //数组的操作: //获取数组中的元素 int [] arr=new int[3]; arr[0]=20; ar...
阅读全文
摘要:函数的重载: 什么时候用重载? 当定义的功能相同,但参与运算的位置内容不同。 那么,这时就定义一个函数名称以表示起功能,方便阅读,而通过参数列表的不同来区分多个不同名函数 重载与返回值类型无关,调用时不确定调用哪个,所以只是返回值不同的函数,不能同时存在于同一个类当中
阅读全文
摘要:public class DbFor_ChengFa_09 { public static void main(String[] args) { // TODO Auto-generated method stub for(int i=1;i<=9;i++){ for(int j=1;j<i+1;j++){ System.out.print(j+"*"+i+"="+j*...
阅读全文

浙公网安备 33010602011771号