毕向东java基础总结(完整版)
传智播客_Java培训_毕向东_Java基础[01-Java概述]
![传智播客_Java培训_毕向东_Java基础[01-Java概述]](https://img.taocdn.com/s3/m/8f21041ebb68a98271fefaf7.png)
[2015-11-01 12:20:34.625] <DEBUG> [network] CXHttpConnection::HandlePacket(512) [http]:search.video.qiyi.domain/qiso3/?if=pc&type=list&pos=1&pageNum=1&pageSize=200&ctgname=%E7%94%B5%E8%A7%86%E5%89%A7&mode=10&site=iqiyi&p=11&p1=114&source_type=1&platform=1&three_category_id=15;must&has_item_link=1 0
[2002-01-01 12:20:28.750] <ERROR> [network] CWebParser::GetVLFolderData(183) begin get GetVLFolderData
[2015-11-01 12:20:28.140] <DEBUG> [network] CXHttpConnection::HandlePacket(512) [http]:search.video.qiyi.domain/qiso3/?if=pc&type=list&pos=1&pageNum=1&pageSize=100&ctgname=%E7%94%B5%E5%BD%B1&mode=10&site=iqiyi&p=11&p1=114&source_type=1&platform=1&three_category_id=1;must&has_item_link=1 0
Java基础[02-Java基础语法1]
![Java基础[02-Java基础语法1]](https://img.taocdn.com/s3/m/320ddb215901020207409cd7.png)
北京传智播客教育
—高级软件人才实作培训专家! 高级软件人才实作培训专家! 2.1 关键字
关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词 特点:关键字中所有字母都为小写 用于定义数据类型的关键字 class long void 用于定义数据类型值的关键字 true if while return false else do null switch for case break default continue 用于定义流程控制的关键字 interface float byte double short char int boolean
—高级软件人才实作培训专家! 高级软件人才实作培训专家!
2.5.5 位运算符
位运算符
运算符 << >> >>> & | ^ ~ 运算 左移 右移 无符号右移 与运算 或运算 异或运算 反码 范例 3 << 2 = 12 --> 3*2*2=12 3 >> 1 = 1 --> 3/2=1 3 >>> 1 = 1 --> 3/2=1 6&3=2 6|3=7 6^3=5 ~6 = -7
• •
单&时,左边无论真假,右边都进行运算; 双&时,如果左边为真,右边参与运算,如果左边为假,那 么右边不参与运算。 “|”和“||”的区别同理,双或时,左边为真,右边不参与 运算。
异或( ^ )与或( | )的不同之处是:当左右都为true时, 结果为false。
北京传智播客教育
北京传智播客教育
—高级软件人才实作培训专家! 高级软件人才实作培训专家! 2.3 注释
/** 这是我的Hello World程序。 @author 小强 */ class Demo { /* 这是主函数,是程序的入口 它的出现可以保证程序的独立运行, */ public static void main(String[] args) { //这是输出语句用于将括号内的数据打印到控制台。 System.out.println("Hello World"); } }
毕向东Java基础[07-IO]
![毕向东Java基础[07-IO]](https://img.taocdn.com/s3/m/412c0db5f121dd36a32d8216.png)
—高级软件人才实作培训专家! IO包中的其他类
操作基本数据类型
• DataInputStream与DataOutputStream • ByteArrayInputStream与ByteArrayOutputStream • CharArrayReader与CharArrayWrite
操作字节数组
• 当某一功能要重复使用时。
练习: 思考:
• 列出一个文件夹下所有的子文件夹以及子文件
• 1,删除一个目录的过程是如何进行的?
北京传智播客教育
—高级软件人才实作培训专家! IO包中的其他类
打印流
• 可以直接操作输入流和文件。 序列流 • 对多个流进行合并。 操作对象
—高级软件人才实作培训专家! 字符流——创建文件
创建流对象,建立数据存放文件
• • •
FileWriter fw = new FileWriter(“Test.txt”); fw.write(“text”);
调用流对象的写入方法,将数据写入流 关闭流资源,并将流中的数据清空到文件中。
fw.close(); 不写close方法会有什么结果呢? 如果想在原有文件上继续加入新的数据呢?
缓冲区的出现提高了对数据的读写效率。 对应类
• BufferedWriter • BufferedReader
缓冲区要结合流才可以使用。 在流的基础上对流的功能进行了增强。
北京传智播客教育
—高级软件人才实作培训专家! 装饰设计模式
对原有类进行了功能的改变,增强。 装饰模式的基本格式。 它与继承有什么不同? 了解BufferedReader的原理。 练习:
java知识点总结毕向东

java知识点总结毕向东Java是一种面向对象的编程语言,由Sun Microsystems于1995年首次发布。
自从诞生以来,Java已经成为了世界上最流行的编程语言之一。
它具有跨平台、面向对象、强类型、自动内存管理、异常处理等特性,使其成为了各种类型的应用程序和系统的首选语言。
本文将从语法基础、面向对象、多线程、集合框架、IO流等方面对Java知识点进行总结,希望读者在学习和使用Java过程中有所帮助。
语法基础Java语言的语法基础包括了基本数据类型、变量、表达式、运算符、控制语句、数组等内容。
Java的基本数据类型包括整型、浮点型、字符型、布尔型,分别对应int、float、char、boolean等关键字。
在Java语言中,变量在使用前必须进行声明,声明变量的方式包括直接声明、赋初值、常量声明等。
表达式是由运算符、操作数和分隔符构成的符合逻辑的字符序列,运算符是用来操作操作数的符号,常用的有算术运算符、关系运算符、逻辑运算符等。
控制语句包括了条件语句、循环语句、跳转语句等,通过这些语句可以对程序的执行流程进行控制。
数组是一种引用类型的数据结构,用于存储多个相同类型的数据。
除此之外,Java还提供了很多其他的语法基础知识,如字符串操作、异常处理等方面,这些都是编写Java程序的基础。
面向对象面向对象是Java语言的核心特性,通过面向对象的编程方法,可以更好地组织代码,提高代码的可读性、可维护性和可扩展性。
Java语言中的面向对象包括了类、对象、封装、继承、多态等概念。
类是面向对象的基本单位,用来描述对象的属性和行为,对象是类的实例化。
封装是将数据和方法封装到一个类中,通过访问权限控制符来保护数据的安全性,使得类的实现细节对外部隐藏。
继承是一个类的定义可以建立在另一个类的基础之上,通过继承可以实现代码的重用,提高代码的可维护性。
多态是通过父类类型的引用指向子类对象,实现了不同对象对同一消息做出不同的响应。
传智播客_Java培训_毕向东_Java基础[06-集合]
![传智播客_Java培训_毕向东_Java基础[06-集合]](https://img.taocdn.com/s3/m/ff6375df6f1aff00bed51e70.png)
—高级软件人才实作培训专家! 基本数据类型对象包装类
将基本数据类型封装成对象的好处在于可以在 对象中定义更多的功能方法操作该数据。 常用的操作之一:用于基本数据类型与字符串 之间的转换。 例:Integer的parseInt方法,intValue方法。 例程
集合框架的构成及分类
北京传智播客教育
—高级软件人才实作培训专家!
集合框架中的常用接口
Collection接口有两个子接口: List(列表) ,Set(集)
List:可存放重复元素,元素存取是有序的。 Set:不可以存放重复元素,元素存取是无序 的。
北京传智播客教育
北京传智播客教育
—高级软件人才实作培训专家! 基本数据类型对象包装类新特性
JDK1.5以后,简化了定义方式。
• Integer x = new Integer(4);可以直接写成 • Integer x = 4;//自动装箱。 • x = x + 5;//自动拆箱。通过intValue方法。
北京传智播客教育
—高级软件人才实作培训专家! 集合框架中的工具类
Collections
• 对集合进行查找 • 取出集合中的最大值,最小值 • 对List集合进行排序 • ……
Arrays
• 将数组转成List集合 • 对数组进行排序 • 对数组进行二分查找
北京传智播客教育
返回值类型 函数名(参数类型… 形式参数) { 执行语句; } 其实接收的是一个数组,可以指定实际参数 个数。
北京传智播客教育
—高级软件人才实作培训专家!
Java 预热班讲义
毕向东 第1-2天 java基本常识

set 变量名 :查看具体一个环境变量的值。
set 变量名=:清空一个环境变量的值。
set 变量名=具体值 :给指定变量定义具体值。
想要在原有环境变量值基础上添加新值呢?
首先,通过%变量名%操作符获取到原有环境变量的值。
然后加上新值后在定义给该变量名即可
在path中通过%%动态的获取JAVA_HOME的值即可。
JAVA_HOME=F:\jdk1.6.0_01
path=%JAVA_HOME%\bin;%path%
%path%:动态获取path环境变量的值。
%JAVA_HOME%:动态获取名称为JAVA_HOME环境变量的值。
既然class文件(字节码文件)是java的运行文件,可不可以实现,在任意目录下都可以执行某一目录下的class文件呢?
是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言。
是一种面向Internet的编程语言。
随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。
是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
建议:配置classpath环境变量时,值的结尾处不要加分号,如果需要访问当前目录可以用 “.”表示。
public class ---{
}
public可以不加,加上了就要保证java名和class名一致,提升权限作用。
可以像配置java工具集bin环境变量的那样给java 类文件class配置环境变量。这样配置即可在使dos在任何文件夹的情况下运行该class文件。配置也分临时配置和永久配置。
毕向东[02-Java基础语法2]
![毕向东[02-Java基础语法2]](https://img.taocdn.com/s3/m/b52175d0a58da0116c17491c.png)
—高级软件人才实作培训专家! 作业安排
见:day03课堂练习、课后作业
北京传智播客教育
是根据某些条件,来控制循环。
北京传智播客教育
—高级软件人才实作培训专家! 2.3.4 其他流程控制语句
break(跳出), continue(继续) break语句:应用范围:选择结构和循环结构。
continue语句:应用于循环结构。
注:
a,这两个语句离开应用范围,存在是没有意义的。 b,这个两个语句单独存在下面都不可以有语句,因为执行不到。 c,continue语句是结束本次循环继续下次循环。 d,标号的出现,可以让这两个语句作用于指定的范围。
—高级软件人才实作培训专家! 2.3.2 选择结构
switch语句
格式: switch(表达式) { case 取值1: 执行语句; break; case 取值2: 执行语句; break; …... default: 执行语句; break; }
北京传智播客教育
—高级软件人才实作培训专家! 2.3.2.1 选择结构练习
北京传智播客教育
—高级软件人才实作培训专家! 2.3.2 选择结构
switch语句特点:
a,switch语句选择的类型只有四种:byte, short,int , char。 b,结束switch语句的两种情况:遇到break,执 行到switch语句结束。 d,如果匹配的case或者default没有对应的 break,那么程序会继续向下执行,运行可以执行 的语句,直到遇到break或者switch结尾结束。
—高级软件人才实作培训专家!
Java语言基础
毕向东
北京传智播客教育
java各知识点详细总结(毕向东笔记整理)-(28075)

Java基础知识总结写代码:1,明确需求。
我要做什么?2,分析思路。
我要怎么做?1,2,3。
3,确定步骤。
每一个思路部分用到哪些语句,方法,和对象。
4,代码实现。
用具体的java语言代码把思路体现出来。
学习新技术的四点:1,该技术是什么?2,该技术有什么特点(使用注意):3,该技术怎么使用。
demo4,该技术什么时候用?test。
-----------------------------------------------------------------------------------------------一:java概述:1991 年Sun公司的James Gosling等人开始开发名称为Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器;1994年将Oak语言更名为Java;Java的三种技术架构:JAVAEE:Java Platform Enterprise Edition,开发企业环境下的应用程序,主要针对web程序开发;JAVASE:Java Platform Standard Edition,完成桌面应用程序的开发,是其它两者的基础;JAVAME:Java Platform Micro Edition,开发电子消费产品和嵌入式设备,如手机中的程序;1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre。
2,JRE:Java Runtime Environment,java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。
3,配置环境变量:让java jdk\bin目录下的工具,可以在任意目录下运行,原因是,将该工具所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。
环境变量的配置:1):永久配置方式:JAVA_HOME=%安装路径%\Java\jdkpath=%JAVA_HOME%\bin2):临时配置方式:set path=%path%;C:\Program Files\Java\jdk\bin特点:系统默认先去当前路径下找要执行的程序,如果没有,再去path中设置的路径下找。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java基础知识总结(超级经典)写代码:1,明确需求。
我要做什么?2,分析思路。
我要怎么做?1,2,3。
3,确定步骤。
每一个思路部分用到哪些语句,方法,和对象。
4,代码实现。
用具体的java语言代码把思路体现出来。
学习新技术的四点:1,该技术是什么?2,该技术有什么特点(使用注意):3,该技术怎么使用。
demo4,该技术什么时候用?test。
-----------------------------------------------------------------------------------------------一:java概述:1991 年Sun公司的James Gosling等人开始开发名称为Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器;1994年将Oak语言更名为Java;Java的三种技术架构:JAVAEE:Java Platform Enterprise Edition,开发企业环境下的应用程序,主要针对web程序开发;JAVASE:Java Platform Standard Edition,完成桌面应用程序的开发,是其它两者的基础;JAVAME:Java Platform Micro Edition,开发电子消费产品和嵌入式设备,如手机中的程序;1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre。
2,JRE:Java Runtime Environment,java程序的运行环境,java运行的所需的类库+JVM(java虚拟机)。
3,配置环境变量:让java jdk\bin目录下的工具,可以在任意目录下运行,原因是,将该工具所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。
环境变量的配置:1):永久配置方式:JAVA_HOME=%安装路径%\Java\jdkpath=%JAVA_HOME%\bin2):临时配置方式:set path=%path%;C:\Program Files\Java\jdk\bin特点:系统默认先去当前路径下找要执行的程序,如果没有,再去path中设置的路径下找。
classpath的配置:1):永久配置方式:classpath=.;c:\;e:\2):临时配置方式:set classpath=.;c:\;e:\注意:在定义classpath环境变量时,需要注意的情况如果没有定义环境变量classpath,java启动jvm后,会在当前目录下查找要运行的类文件;如果指定了classpath,那么会在指定的目录下查找要运行的类文件。
还会在当前目录找吗?两种情况:1):如果classpath的值结尾处有分号,在具体路径中没有找到运行的类,会默认在当前目录再找一次。
2):如果classpath的值结果出没有分号,在具体的路径中没有找到运行的类,不会再当前目录找。
一般不指定分号,如果没有在指定目录下找到要运行的类文件,就报错,这样可以调试程序。
4,javac命令和java命令做什么事情呢?要知道java是分两部分的:一个是编译,一个是运行。
javac:负责的是编译的部分,当执行javac时,会启动java的编译器程序。
对指定扩展名的.java文件进行编译。
生成了jvm可以识别的字节码文件。
也就是class文件,也就是java的运行程序。
java:负责运行的部分.会启动jvm.加载运行时所需的类库,并对class文件进行执行.一个文件要被执行,必须要有一个执行的起始点,这个起始点就是main函数.----------------------------------------------------------------------------------------------二:java语法基础:1,关键字:其实就是某种语言赋予了特殊含义的单词。
保留字:其实就是还没有赋予特殊含义,但是准备日后要使用过的单词。
2,标示符:其实就是在程序中自定义的名词。
比如类名,变量名,函数名。
包含0-9、a-z、$、_ ;注意:1),数字不可以开头。
2),不可以使用关键字。
3,常量:是在程序中的不会变化的数据。
4,变量:其实就是内存中的一个存储空间,用于存储常量数据。
作用:方便于运算。
因为有些数据不确定。
所以确定该数据的名词和存储空间。
特点:变量空间可以重复使用。
什么时候定义变量?只要是数据不确定的时候,就定义变量。
变量空间的开辟需要什么要素呢?1,这个空间要存储什么数据?数据类型。
2,这个空间叫什么名字啊?变量名称。
3,这个空间的第一次的数据是什么?变量的初始化值。
变量的作用域和生存期:变量的作用域:作用域从变量定义的位置开始,到该变量所在的那对大括号结束;生命周期:变量从定义的位置开始就在内存中活了;变量到达它所在的作用域的时候就在内存中消失了;数据类型:1):基本数据类型:byte、short、int、long、float、double、char、boolean2):引用数据类型: 数组、类、接口。
级别从低到高为:byte,char,short(这三个平级)-->int-->float-->long-->double自动类型转换:从低级别到高级别,系统自动转的;强制类型转换:什么情况下使用?把一个高级别的数赋给一个别该数的级别低的变量;运算符号:1)、算术运算符。
+ - * / % %:任何整数模2不是0就是1,所以只要改变被模数就可以实现开关运算。
+:连接符。
++,--2)、赋值运算符。
= += -= *= /= %=3)、比较运算符。
特点:该运算符的特点是:运算完的结果,要么是true,要么是false。
4)、逻辑运算符。
& | ^ ! && ||逻辑运算符除了! 外都是用于连接两个boolean类型表达式。
&: 只有两边都为true结果是true。
否则就是false。
|:只要两边都为false结果是false,否则就是true^:异或:和或有点不一样。
两边结果一样,就为false。
两边结果不一样,就为true.& 和&&区别:& :无论左边结果是什么,右边都参与运算。
&&:短路与,如果左边为false,那么右边不参数与运算。
| 和|| 区别:|:两边都运算。
||:短路或,如果左边为true,那么右边不参与运算。
5)、位运算符:用于操作二进制位的运算符。
& | ^<< >> >>>(无符号右移)练习:对两个变量的数据进行互换。
不需要第三方变量。
int a = 3,b = 5;-->b = 3,a = 5;a = a + b; a = 8;b = a - b; b = 3;a = a - b; a = 5;a = a ^ b;//b = a ^ b;//b = a ^ b ^ b = aa = a ^ b;//a = a ^b ^ a = b;练习:高效的算出2*8 = 2<<3;5,语句。
If switch do while while for这些语句什么时候用?1)、当判断固定个数的值的时候,可以使用if,也可以使用switch。
但是建议使用switch,效率相对较高。
switch(变量){case 值:要执行的语句;break;…default:要执行的语句;}工作原理:用小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了就执行哪个case后面的语句,如果没有相同的则执行default后面的语句;细节:1):break是可以省略的,如果省略了就一直执行到遇到break为止;2):switch 后面的小括号中的变量应该是byte,char,short,int四种类型中的一种;3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression 与case中的value是否匹配,程序会从default开始执行直到第一个break出现。
2)、当判断数据范围,获取判断运算结果boolean类型时,需要使用if。
3)、当某些语句需要执行很多次时,就用循环结构。
while和for可以进行互换。
区别在于:如果需要定义变量控制循环次数。
建议使用for。
因为for循环完毕,变量在内存中释放。
break:作用于switch ,和循环语句,用于跳出,或者称为结束。
break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。
当循环嵌套时,break只跳出当前所在循环。
要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
continue:只作用于循环结构,继续循环用的。
作用:结束本次循环,继续下次循环。
该语句单独存在时,下面不可以定义语句,执行不到。
6,函数:为了提高代码的复用性,可以将其定义成一个单独的功能,该功能的体现就是java中的函数。
函数就是体现之一。
java中的函数的定义格式:修饰符返回值类型函数名(参数类型形式参数1,参数类型形式参数1,…){执行语句;return 返回值;}当函数没有具体的返回值时,返回的返回值类型用void关键字表示。
如果函数的返回值类型是void时,return语句可以省略不写的,系统会帮你自动加上。
return的作用:结束函数。
结束功能。
如何定义一个函数?函数其实就是一个功能,定义函数就是实现功能,通过两个明确来完成:1)、明确该功能的运算完的结果,其实是在明确这个函数的返回值类型。
2)、在实现该功能的过程中是否有未知内容参与了运算,其实就是在明确这个函数的参数列表(参数类型&参数个数)。
函数的作用:1)、用于定义功能。
2)、用于封装代码提高代码的复用性。
注意:函数中只能调用函数,不能定义函数。
主函数:1)、保证该类的独立运行。
2)、因为它是程序的入口。
3)、因为它在被jvm调用。
函数定义名称是为什么呢?答:1)、为了对该功能进行标示,方便于调用。
2)、为了通过名称就可以明确函数的功能,为了增加代码的阅读性。
重载的定义是:在一个类中,如果出现了两个或者两个以上的同名函数,只要它们的参数的个数,或者参数的类型不同,即可称之为该函数重载了。
如何区分重载:当函数同名时,只看参数列表。
和返回值类型没关系。
7,数组:用于存储同一类型数据的一个容器。
好处:可以对该容器中的数据进行编号,从0开始。
数组用于封装数据,就是一个具体的实体。
如何在java中表现一个数组呢?两种表现形式。
1)、元素类型[] 变量名= new 元素类型[元素的个数];2)、元素类型[] 变量名= {元素1,元素2...};元素类型[] 变量名= new 元素类型[]{元素1,元素2...};---------------------------------------------------------//二分查找法。