本帖最后由 张斯佳 于 2018-1-9 09:43 编辑
一,面向对象
1、面向对象思想:
(1)概述:面向对象是相对于面向过程而言的,面向过程强调的是功能,面向对象强调的是将功能封装进对象,强调具备功能的对象;
(2)思想特点:
A:是符合人们思考习惯的一种思想;
B:将复杂的事情简单化了;
C:将程序员从执行者变成了指挥者;
比如我要达到某种结果,我就寻找能帮我达到该结果的功能的对象,如我要洗衣服我就买洗衣机,至于怎么洗我不管。
对于做题的时候,一般提到了属性,其实我们就可以理解要把这个定义成成员变量,如果说行为,那么就可以定义成成员方法(这里的方法是不需要加static关键字的).
二,成员变量与局部变量的区别
1、在类中的位置不同
成员变量:在类中方法外面
局部变量:在方法或者代码块中,或者方法的声明上(即在参数列表中)
2、在内存中的位置不同,可以看看Java程序内存的简单分析
成员变量:在堆中(方法区中的静态区)
局部变量:在栈中
3、生命周期不同
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用或者代码块的执行而存在,随着方法的调用完毕或者代码块的执行完毕而消失
4、初始值
成员变量:有默认初始值
局部变量:没有默认初始值,使用之前需要赋值,否则编译器会报错(The local variable xxx may not have been initialized)
三,ArrayList集合
如何创建集合对象,只要说到要用结合,那么我就就要创建一个集合:
ArrayList<> list = new ArrayList<>();
<>里放的是你要存储什么样的类型的元素.
集合中常用的方法: 添加方法add(E e) 括号中的参数要跟<>里的类型一致,比如<String> 那么add()方法里就要写字符串: add("abc"),如果存储的是自定义的Student类,即<Student>,那么add()方法里存储的就是Student对象,存储之前要先有Student对象,比如
Student s = new Student(); 这里用空参构造来举例
添加的时候就要 list.add(s); 千万不要忘记这里要用我们创建出来的 集合名(这里是list) 来调用.
然后就是get(int index)方法,遍历集合的时候,你集合中存储的是什么类型的元素,那么调用get(int index)方法就会得到对应类型的元素,比如Student类: Student s1 = list.get(0); 这里的 0 是索引,不是固定的.
四,IO流
这里咱们只学了 FileWriter FileReader BufferedReader BufferedWriter
如果是读取 那么就是用 FileReader BufferedWriter
格式: FileReader fw = new FileReader ("a.txt");
BufferedReader br = newBufferedReader(new FileReader("FileWriterDemo.java"));
如果是写入 那么就是用 FileWriter BufferedWriter
FileWriter fw = newFileWriter("b.txt");
BufferedWriter bw = new BufferedWriter(new FileWriter ("FileWriterDemo.java"));
读和写,有两种格式,一个是用高效字符流 就是到Buffered的 ,还有就是普通的字符读写流,如果没有明确要求,一般我们都会用高效流.
因为BufferedReader 里有读取一行的方法 : String s = br.readerLine();
BufferedWriter 里也有换行的方法: bw.newLine();
一般IO流操作文件的步骤都是: ①创建输入(读取)或者输出(写入)流对象
②读取文件内容
③关流
至于其中要把读取出来的内容做什么判断然后再输出,都会在读取文件内容后面执行.
|
|