Java学习笔记(必看经典).pdf
- 格式:pdf
- 大小:396.81 KB
- 文档页数:30
JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
实例变量:定义在类中但在任何方法之外。
(New出来的均有初值)局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
Java学习笔记Java相关课程系列笔记之一笔记内容说明4月18日的五天Java训练营(刘英谦老师主讲,占笔记内容10%);Java基础和面向对象(刘苍松老师主讲,占笔记内容40%);Java SE核心I 和Java SE 核心II(范传奇老师主讲,占笔记内容40%);其他视频及书籍资料(占笔记内容10%)目录一、Java技术基础 (1)1.1编程语言 (1)1.2 Java的特点 (1)1.3 Java开发环境 (1)1.4 Java开发环境配置 (2)1.5 Linux命令与相关知识 (2)1.6 Eclipse/Myeclipse程序结构 (3)二、Java语言基础 (4)2.1基础语言要素 (4)2.2八种基本数据类型 (4)2.3常量和变量 (5)2.4运算符与表达式 (5)2.5编程风格 (6)2.6流程控制语句 (7)2.7数组 (8)2.8字符串 (8)2.9方法三要素 (9)2.10插入排序 (9)2.11冒泡排序 (9)2.12冒泡排序:轻气泡上浮的方式 (10)2.13二分法查找 (10)2.14 Java系统API方法调用 (11)2.15二进制基础 (11)2.16 Java基础其他注意事项 (11)三、面向对象 (13)3.1类 (13)3.2对象 (13)3.3包 (13)3.4方法及其调用 (14)3.5引用 (14)3.6访问控制(封装) (14)3.7构造器 (14)3.8 super()、super.和this()、this. (15)3.9重载和重写 (16)3.10继承 (17)3.11 static (20)3.12 final (21)3.13多态 (22)3.14抽象类 (22)3.15接口 (22)3.16内部类 (23)3.17匿名类 (24)13.18二维数组和对象数组 (25)3.19其他注意事项 (25)四、Java SE核心I (27)4.1 Object类 (27)4.2 String类 (28)4.3 StringUtils类 (30)4.4 StringBuilder类 (30)4.5正则表达式 (31)4.6 Date类 (32)4.7 Calendar类 (32)4.8 SimpleDateFormat类 (33)4.9 DateFormat类 (33)4.10包装类 (34)4.11 BigDecimal类 (34)4.12 BigInteger类 (35)4.13 Collection集合框架 (35)4.14 List集合的实现类ArrayList和LinkedList (36)4.15 Iterator迭代器 (39)4.16泛型 (39)4.17增强型for循环 (40)4.18 List高级-数据结构:Queue队列 (40)4.19 List高级-数据结构:Deque栈 (41)4.20 Set集合的实现类HashSet (41)4.21 Map集合的实现类HashMap (43)4.22单例模式和模版方法模式 (45)五、Java SE核心II (46)5.1 Java异常处理机制 (46)5.2 File文件类 (48)5.3 RandomAccessFile类 (50)5.4基本流:FIS和FOS (52)5.5缓冲字节高级流:BIS和BOS (53)5.6基本数据类型高级流:DIS和DOS (53)5.7字符高级流:ISR和OSW (54)5.8缓冲字符高级流:BR和BW (55)5.9文件字符高级流:FR和FW (56)5.10 PrintWriter (57)5.11对象序列化 (57)5.12 Thread线程类及多线程 (58)5.13 Socket网络编程 (61)5.14线程池 (63)5.15双缓冲队列 (64)2一、Java技术基础1.1编程语言机器语言:0 1 在硬件直接执行汇编语言:助记符高级语言:(Java运行比C/C++慢)1)面向过程的高级语言:程序设计的基本单位为函数,如:C/C++语言。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
实例变量的对象赋值为null。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
实例变量的对象赋值为null。
Java学习笔记目录一、Java技术基础 .........................................................................................................................1.1编程语言...............................................................................................................................1.2 Java的特点...........................................................................................................................1.3 Java开发环境.......................................................................................................................1.4 Java开发环境配置...............................................................................................................1.5 Linux命令与相关知识 ........................................................................................................1.6 Eclipse/Myeclipse程序结构 ................................................................................................二、Java语言基础 .........................................................................................................................2.1基础语言要素.......................................................................................................................2.2八种基本数据类型...............................................................................................................2.3常量和变量...........................................................................................................................2.4运算符与表达式...................................................................................................................2.5编程风格...............................................................................................................................2.6流程控制语句.......................................................................................................................2.7数组.......................................................................................................................................2.8字符串...................................................................................................................................2.9方法三要素...........................................................................................................................2.10插入排序.............................................................................................................................2.11冒泡排序.............................................................................................................................2.12冒泡排序:轻气泡上浮的方式.........................................................................................2.13二分法查找.........................................................................................................................2.14 Java系统API方法调用 ....................................................................................................2.15二进制基础.........................................................................................................................2.16 Java基础其他注意事项.....................................................................................................三、面向对象 .................................................................................................................................3.1类...........................................................................................................................................3.2对象.......................................................................................................................................3.3包...........................................................................................................................................3.4方法及其调用.......................................................................................................................3.5引用.......................................................................................................................................3.6访问控制(封装)...............................................................................................................3.7构造器...................................................................................................................................3.8 super()、super.和this()、this........................................................................................3.9重载和重写...........................................................................................................................3.10继承.....................................................................................................................................3.11 static ....................................................................................................................................3.12 final .....................................................................................................................................3.14抽象类.................................................................................................................................3.15接口.....................................................................................................................................3.16内部类.................................................................................................................................3.17匿名类.................................................................................................................................3.18二维数组和对象数组.........................................................................................................3.19其他注意事项.....................................................................................................................四、Java SE核心I .........................................................................................................................4.1 Object类...............................................................................................................................4.2 String类................................................................................................................................4.3 StringUtils类 ........................................................................................................................4.4 StringBuilder类....................................................................................................................4.5正则表达式...........................................................................................................................4.6 Date类..................................................................................................................................4.7 Calendar类 ...........................................................................................................................4.8 SimpleDateFormat类 ...........................................................................................................4.9 DateFormat类.......................................................................................................................4.10包装类.................................................................................................................................4.11 BigDecimal类 ....................................................................................................................4.12 BigInteger类.......................................................................................................................4.13 Collection集合框架 ...........................................................................................................4.14 List集合的实现类ArrayList和LinkedList ......................................................................4.15 Iterator迭代器....................................................................................................................4.16泛型.....................................................................................................................................4.17增强型for循环..................................................................................................................4.18 List高级-数据结构:Queue队列 ..................................................................................4.19 List高级-数据结构:Deque栈 ......................................................................................4.20 Set集合的实现类HashSet ................................................................................................4.21 Map集合的实现类HashMap ............................................................................................4.22单例模式和模版方法模式.................................................................................................五、Java SE核心II ........................................................................................................................5.1 Java异常处理机制...............................................................................................................5.2 File文件类 ...........................................................................................................................5.3 RandomAccessFile类...........................................................................................................5.4基本流:FIS和FOS ............................................................................................................5.5缓冲字节高级流:BIS和BOS ...........................................................................................5.6基本数据类型高级流:DIS和DOS ..................................................................................5.7字符高级流:ISR和OSW ..................................................................................................5.8缓冲字符高级流:BR和BW .............................................................................................5.9文件字符高级流:FR和FW ..............................................................................................5.10 PrintWriter ...........................................................................................................................5.11对象序列化.........................................................................................................................5.12 Thread线程类及多线程 ....................................................................................................5.13 Socket网络编程.................................................................................................................5.15双缓冲队列.........................................................................................................................Java技术基础1.1编程语言机器语言:0 1 在硬件直接执行汇编语言:助记符高级语言:(Java运行比C/C++慢)1)面向过程的高级语言:程序设计的基本单位为函数,如:C/C++语言。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
实例变量的对象赋值为null。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
实例变量的对象赋值为null。
名词解释 & JAVA多线程编程名词解释:JNI(Java Native Interface)指的是Java本地调用接口,通过这一接口,Java程序可以和采用其他语言编写的本地程序进行通信。
IPC是两个进程之间进行通信的一种机制。
JMX(Java Management Extensions)是SUN提出的Java管理扩展规范,是一个为应用程序、设备和系统植入管理功能的框架。
JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议。
通过JMX,用户可以灵活地开发无缝集成的系统、网络和服务管理应用。
JNDI(Java Naming and Directory Interface)是一种将对象和名字绑定的技术,对象工厂负责生产出对象,这些对象都和惟一的名字绑定。
外部程序可以通过名字来获得某个对象的引用。
DTD即文档类型定义。
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,是Internet传送E-mail的基本协议,也是TCP/IP协议组的成员。
SMTP解决了E-mail系统如何通过一条链路,把邮件从一台机器传递到另一台机器上的问题。
通常把发送邮件服务器称为SMTP服务器。
POP3(Post Office Protocol3)即邮局协议第3版,这是Internet接收E-mail的基本协议,也是TCP/IP协议组的成员。
IMAP(Internet Message Access Protocol)即直接收取邮件的协议,是与POP3不同的一种E-mail 接收的新协议。
MIME(Multipurpose Internet Mail Extensions)是一种电子邮件编码方式,它可以将发信人的电子邮件中的文本以及各种附件都打包后发送。
SOAP(Simple Object Access Protocol)即简单对象访问协议,是在分散或分布式的环境中交换信息的简单协议,它以XML作为数据传送方式。
第5关无上心法知识梳理(类和对象)1、面向过程与面向对象的区别2、面向对象的优点:与人类的思维习惯一致把人类解决问题的思维过程转变为程序能够理解的过程信息隐藏,提高了程序的可维护性和安全性封装实现了模块化和信息隐藏封装使得在对象外部不能随意访问对象的属性和方法提高了程序的可重用性一个类可以创建多个对象实例,增加了重用性3、什么是对象4、什么是类5、在java程序中如何定义一个类定义一个类的步骤定义类名编写类的属性编写类的方法6、在java程序中如何创建对象和使用对象创建对象类名对象名= new 类名();引用类的属性:对象名.属性引用类的方法:对象名.方法名()练习:实现输出学生信息,下面代码有哪些错误?public class &Student {String name;char sex;int age;public static void main(String[] args){Student stu = new Student();name = "神仙姐姐";sex = 'F';age = 18;System.out.println(stu);}}7、类和对象的关系8、类的方法定义带参方法<访问修饰符> 返回类型<方法名>(<形式参数列表>){//方法的主体}调用带参方法对象名.方法名(实参1, 实参2,……,实参n)9、基本数据类型参数传递和引用数据类型参数传递public class Test2 {public static void main(String[] args) {int x = 5;System.out.println("方法调用前x == " + x);Test t = new Test();t.change(x);System.out.println("方法调用后x ==" + x);}}-------------------------------------public class Test {public void change(int x){x = 100;System.out.println("方法中的x==" + x);}}======================================================== public class Student {//java课成绩double java;}-------------------------------public class StudentScore {public void change(Student stu){stu.java = 100;System.out.println("方法中的java成绩== " + stu.java);}}---------------------------public class TestStudentScore {public static void main(String[] args) {Student stu = new Student();stu.java = 0;System.out.println("方法调用前的java成绩:" + stu.java);StudentScore ss = new StudentScore();ss.change(stu);System.out.println("方法调用后的java成绩:" + stu.java);}}10、字符串字符串的创建:String name="张本星";String name2 = new String();name2 = "邵志峰";String name3 = new String("熊仁波");字符串的长度:String str1 = "开心";String emal = "accplmy@";String str2 = "快乐!!aa";System.out.println("str1 = " + str1.length());System.out.println("emal = " + emal.length());System.out.println("str2 = " + str2.length());字符串的比较.equals()public class TestString_equals2 {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.println("请输入用户名:");String uname = input.next();System.out.println("请输入密码:");String upass = input.next();String okName = "TOM";String okPass = "1234567";//比较字符串时考虑字符串的大小写if(uname.equals("TOM") && upass.equals("1234567")){System.out.println("成功");}else{System.out.println("用户名密码不正确");}//比较字符串时忽略字符串的大小写if(uname.equalsIgnoreCase("TOM") &&upass.equalsIgnoreCase("1234567")){System.out.println("忽略字符串的大小写---成功");}else{System.out.println("忽略字符串的大小写---用户名密码不正确");}//比较字符串的时候将字符串全部转换为统一的大小写if(uname.toLowerCase().equals(okName.toLowerCase()) && upass.toLowerCase().equals(okPass.toLowerCase())){System.out.println("全部转换为统一的大小写---成功");}else{System.out.println("全部转换为统一的大小写---用户名密码不正确");}}}字符串的比较==:字符串的连接:方法1:使用“+”方法2:使用String类的concat()方法字符串常用的提取方法:String filename = "test.java";int i_t = filename.indexOf("a");int i = filename.indexOf(".JA V A");int i_a = stIndexOf(".");System.out.println("i=" + i);System.out.println("i_a=" + i_a);--------------------------------------------------------String email = "accplmy@";String sub_email = email.substring(7);System.out.println(sub_email);String sub_email2 = email.substring(0, 7);System.out.println(sub_email2);//最后一次出现“.”int index = stIndexOf(".");System.out.println("最后一次出现“.”:" + index);//寻找"com"String search_com = email.substring(index+1, email.length());System.out.println("寻找“com”: " + search_com);//寻找“@”int i_a = email.indexOf("@");System.out.println("寻找@:" + i_a);字符串去空格:String name ="你好!";String time = "下午";String hellow = name+time;String hellow2 = name.trim()+time;System.out.println(hellow);System.out.println(hellow2);练习:判断.java文件名是否正确,判断邮箱格式是否正确。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
实例变量的对象赋值为null。
Java学习笔记Java相关课程系列笔记之一笔记内容说明4月18日的五天Java训练营(刘英谦老师主讲,占笔记内容10%);Java基础和面向对象(刘苍松老师主讲,占笔记内容40%);Java SE核心I 和Java SE 核心II(范传奇老师主讲,占笔记内容40%);其他视频及书籍资料(占笔记内容10%)目录一、Java技术基础 (1)1.1编程语言 (1)1.2 Java的特点 (1)1.3 Java开发环境 (1)1.4 Java开发环境配置 (2)1.5 Linux命令与相关知识 (2)1.6 Eclipse/Myeclipse程序结构 (3)二、Java语言基础 (4)2.1基础语言要素 (4)2.2八种基本数据类型 (4)2.3常量和变量 (5)2.4运算符与表达式 (5)2.5编程风格 (6)2.6流程控制语句 (7)2.7数组 (8)2.8字符串 (8)2.9方法三要素 (9)2.10插入排序 (9)2.11冒泡排序 (9)2.12冒泡排序:轻气泡上浮的方式 (10)2.13二分法查找 (10)2.14 Java系统API方法调用 (11)2.15二进制基础 (11)2.16 Java基础其他注意事项 (11)三、面向对象 (13)3.1类 (13)3.2对象 (13)3.3包 (13)3.4方法及其调用 (14)3.5引用 (14)3.6访问控制(封装) (14)3.7构造器 (14)3.8 super()、super.和this()、this. (15)3.9重载和重写 (16)3.10继承 (17)3.11 static (20)3.12 final (21)3.13多态 (22)3.14抽象类 (22)3.15接口 (22)3.16内部类 (23)3.17匿名类 (24)13.18二维数组和对象数组 (25)3.19其他注意事项 (25)四、Java SE核心I (27)4.1 Object类 (27)4.2 String类 (28)4.3 StringUtils类 (30)4.4 StringBuilder类 (30)4.5正则表达式 (31)4.6 Date类 (32)4.7 Calendar类 (32)4.8 SimpleDateFormat类 (33)4.9 DateFormat类 (33)4.10包装类 (34)4.11 BigDecimal类 (34)4.12 BigInteger类 (35)4.13 Collection集合框架 (35)4.14 List集合的实现类ArrayList和LinkedList (36)4.15 Iterator迭代器 (39)4.16泛型 (39)4.17增强型for循环 (40)4.18 List高级-数据结构:Queue队列 (40)4.19 List高级-数据结构:Deque栈 (41)4.20 Set集合的实现类HashSet (41)4.21 Map集合的实现类HashMap (43)4.22单例模式和模版方法模式 (44)五、Java SE核心II (46)5.1 Java异常处理机制 (46)5.2 File文件类 (48)5.3 RandomAccessFile类 (50)5.4基本流:FIS和FOS (52)5.5缓冲字节高级流:BIS和BOS (52)5.6基本数据类型高级流:DIS和DOS (53)5.7字符高级流:ISR和OSW (53)5.8缓冲字符高级流:BR和BW (54)5.9文件字符高级流:FR和FW (56)5.10 PrintWriter (56)5.11对象序列化 (57)5.12 Thread线程类及多线程 (58)5.13 Socket网络编程 (61)5.14线程池 (63)5.15双缓冲队列 (64)2一、Java技术基础1.1编程语言机器语言:0 1 在硬件直接执行汇编语言:助记符高级语言:(Java运行比C/C++慢)1)面向过程的高级语言:程序设计的基本单位为函数,如:C/C++语言。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
实例变量:定义在类中但在任何方法之外。
(New出来的均有初值)局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
实例变量的对象赋值为null。