尚硅谷-IT精英计划_JavaSE内部学习笔记
- 格式:pdf
- 大小:3.43 MB
- 文档页数:70
尚硅谷java学习计划一、课程简介尚硅谷(Shanggu)Java 是国内一家专注于IT技术培训的专业教育机构,致力于提供高质量、灵活性强的在线教育服务。
本学习计划将依托尚硅谷的优质课程资源,带领学员从零开始系统学习Java编程,掌握Java的基础知识和常用技术,并注重实际技能的培养。
二、学习目标1. 掌握Java编程语言的基础知识,包括语法、数据类型、运算符、流程控制等;2. 理解面向对象编程的概念和特点,并能够运用Java语言进行对象的创建、继承、封装和多态等操作;3. 熟练掌握Java的常用类库和API,能够应用Java进行文件操作、数据库操作、网络编程等;4. 了解常用的Java框架和开发工具,如Spring、MyBatis、Maven等,并能够运用它们进行项目的开发和管理;5. 通过学习,完整地掌握Java的开发流程和规范,真正具备Java开发工程师的能力和水平;三、学习内容及安排1. Java基础学习内容:Java语言概述、开发环境的搭建、基本语法和数据类型、运算符、流程控制、数组、字符串和正则表达式;学习时间:2周;学习任务:完成相关课程的学习和练习,掌握基础语法和常用API的使用。
2. 面向对象编程学习内容:面向对象的概念和特点、类和对象的概念、封装、继承、多态等;学习时间:3周;学习任务:深入理解面向对象编程思想,能够进行对象的创建和操作,掌握面向对象设计原则和模式。
3. Java常用类库学习内容:常用API的使用、集合框架、IO流操作、网络编程、异常处理等;学习时间:4周;学习任务:熟练掌握常用类库的使用,能够进行文件操作、网络编程和异常处理等操作。
4. Java高级特性学习内容:泛型、反射、注解、枚举、多线程、Lambda表达式等;学习时间:3周;学习任务:深入了解Java的高级特性,能够灵活运用于实际项目中,提高代码的质量和可维护性。
5. JavaWeb开发学习内容:Servlet、JSP、JavaBean、Cookie和Session、Filter和Listener等;学习时间:4周;学习任务:掌握JavaWeb开发的基础知识和技术,能够完成简单的Web应用开发。
javase知识点归纳总结JavaSE是Java Platform, Standard Edition(Java标准版)的缩写,是Java语言的标准版开发平台,是整个Java EE、Java ME平台的核心。
JavaSE包含了Java语言基础、程序设计、常用API等等,是Java开发的基础。
本文将对JavaSE的知识点进行归纳总结,帮助大家更好地理解JavaSE的核心内容。
JavaSE知识点归纳总结:一、Java语言基础1. 数据类型Java语言的数据类型包括基本数据类型和引用数据类型。
基本数据类型包括整型、浮点型、字符型、布尔型,引用数据类型包括类、接口、数组。
2. 变量与常量Java语言的变量可以分为基本数据类型变量和引用数据类型变量,常量是在程序运行过程中不会发生改变的量。
3. 运算符Java语言的运算符包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符等。
4. 控制流程Java语言的控制流程包括顺序结构、分支结构、循环结构。
5. 方法Java语言的方法是一段有名字的代码块,可以重复使用,可以有参数和返回值。
二、面向对象编程1. 类与对象Java语言是一种面向对象的编程语言,类是对象的设计图,对象是类的一个实例。
2. 继承与多态继承是子类继承父类的属性和方法,多态是同一个方法针对不同的对象有不同的表现形式。
3. 封装与继承封装是将数据和方法进行了封装,隐藏了内部的实现细节,继承是子类继承父类的属性和方法。
4. 接口与抽象类接口是一种抽象的数据类型,抽象类是抽象了一些共同的特征和行为的类。
5. 内部类内部类是定义在另一个类中的类,可以访问外部类的成员。
三、异常处理1. 异常的分类Java语言的异常包括编译时异常和运行时异常,编译时异常需要捕获或声明,运行时异常可以不捕获也不声明。
2. 异常的处理Java语言的异常处理包括try-catch语句块、throw语句和throws关键字。
Java基础知识点归纳Java基础学问点归纳对于刚刚接触Java的人,java基础学问技术点繁多,那么yjbys我为大家汇总最全java学问点如下,仅供大家参考学习!1. JVM相关(包括了各个版本的特性)对于刚刚接触Java的人来说,JVM相关的学问不愿定需要理解很深,对此里面的概念有一些简洁的了解即可。
不过对于一个有着3年以上Java阅历的资深开发者来说,不会JVM几乎是不行接受的。
JVM作为java运行的基础,很难信任对于JVM一点都不了解的人可以把java 语言吃得很透。
我在面试有超过3年Java阅历的开发者的时候,JVM几乎就是一个必问的问题了。
当然JVM不是唯一确定技术能力好坏的面试问题,但是可以佐证java开发能力的高低。
在JVM这个大类中,我认为需要把握的学问有:JVM内存模型和结构GC原理,性能调优调优:Thread Dump,分析内存结构class 二进制字节码结构,class loader 体系,class加载过程,实例创建过程方法执行过程:Java各个大版本更新提供的新特性(需要简洁了解)2. Java的运行(基础必备)这条可能出看很简洁,java程序的运行谁不会呢?不过很多时候,我们只是单纯通过IDE去执行java程序,底层IDE又是如何执行java程序呢?很多人并不了解。
这个学问点是最最基本的java开发者需要把握的,初学java,第一个确定是教你如何在指令行中执行java程序,但是很多人一旦把java学完了,IDE用上了,就把这个都忘了。
为什么强调要知道这个呢,知道了java最纯粹的启动方式之后,你才能在启动出问题的时候,去分析当时启动的名目多少,执行命名如何,参数如何,是否有缺失等。
这样有利于你真正开发中去解决那些奇诧异怪的可能和环境相关的问题。
在这里需要把握的学问有:javac 编译java文件为class 文件java 指令的使用,带package的java类如何在指令行中启动java程序涉及到的各个路径(classpath,java。
Java-课堂笔记-第一章至第八章知识点梳理1.控制台程序开发1.1 开发Java程序的步骤(1)编写源程序:Java源程序文件后缀名.java(2)编译源程序:使用javac命令编译源程序,编译之后的文件后缀名.class (3)运行使用java命令运行编译之后的.class文件1.2 程序开发环境记事本、Eclipse或MyEclipse1.3 控制台输入/输出(1)从控制台输入信息使用Scanner对象第一步:创建一个Scanner扫描器对象Scanner input = new Scanner(System.in);第二步:导入Scanner包import java.util.Scanner;第三步:获取从控制台输入的整数int num = input.nextInt();获取从控制台输入的小数double num = input.nextDouble();获取从控制台输入的字符char ziFu = input.next().charAt(0);获取从控制台输入的字符串String str = input.next();(2)从控制台输出信息使用System.out.print();System.out.println();转义字符:\n:换行\t:一个制表符(8个空格)1.4 程序注释Java中的注释有3种:(1)单行注释://这里是注释内容(2)多行注释:/*这里是注释内容*/(3)文档注释:/**这里是注释内容*/1.5 程序调试2.变量和运算符2.1 变量变量:变量就是变化的量,是数据存储空间的表示,即数据在内存空间地址的别名(1)变量的声明语法:数据类型变量名;举例:int score;//声明一个int类型的变量score,保存成绩(2)变量的赋值(初始化)基本数据类型的赋值使用“=”赋值语法:变量名 = 值;举例:score = 98;引用数据类型使用new关键字语法:数据类型变量名 = new 数据类型();举例:Scanner input = new Scanner(System.in);2.2 常量2.3 运算符(1)赋值运算符:=、+=、-=、*=、/=、%=举例:sum += i;//相当于sum = sum + i;(2)算术运算符:+、-、*、/、%(3)关系运算符:>、<、>=、<=、==、!=(4)逻辑运算符:&&、||、!(5)自增运算符:i++或++ii++ 相当于 i = i + 1;(6)自减运算符:i--或--ii-- 相当于 i = i - 1;(7)三目运算符:?:3.数据类型与数组3.1 数据类型(1)基本数据类型整型:byte、short、int、long浮点型:float、double字符型:char布尔型:boolean(2)引用数据类型String、数组、类(class)、接口(3)数据类型转换自动数据类型转换自动数据类型转换的条件1.目标类型和源类型数据类型要兼容,数值类型(整型和浮点型)相互兼容2.目标类型要大于源类型,double型可以存放int型数据,因为double型变量分配的空间宽度足够存储int型变量强制数据类型转换语法:(数据类型)表达式;3.2 数组(1)数组的基本用法数组声明语法:数据类型[] 数组名;或数据类型数组名[];数组分配空间语法:数组名 = new 数据类型[数组长度];数组赋值静态赋值:给数组元素单个赋值如:scores[0] = 98;scores[1] = 87;动态赋值:使用for循环动态给数组元素赋值如:for(int i=0;i<scores.length;i++){ //每次循环把输入的数值赋值给数组元素scores[i] = input.nextDouble();}直接创建数组:方式一:数据类型[] 数组名={值1,值2,值3,....};方式二:数据类型[] 数组名=new 数据类型[]{值1,值2,值3,..};访问数组元素:语法:数组名[下标值];获取数组长度:语法:数组名.length;(2)数组应用数组排序:1.import java.util.Arrays;//导入Arrays工具包2.Arrays.sort(数组名);求最大值:(见第七章数组课堂笔记)求最小值:(见第七章数组课堂笔记)4.流程控制语句4.1 分支结构(选择结构)(1)if选择结构if(判断条件){执行语句;}(2)if-else选择结构if(判断条件){执行语句1;}else{执行语句2;}(3)多重if选择结构if(判断条件1){执行语句1;}else if(判断条件2){执行语句2;}else if(判断条件3){执行语句3;}else{执行语句4;}(4)嵌套if选择结构if(判断条件1){if(判断条件2){执行语句1;}else{执行语句2;}}else{执行语句3;}(5)switch选择结构switch(表达式){case 常量1:代码块1;break;case 常量2:代码块2;break;case 常量3:代码块3;break;.......default:代码块n;break;}4.2 循环结构(1)while循环while(循环条件){循环操作;}特点:先判断,后执行(2)do-while循环do{循环操作;}while(循环条件);特点:先执行,后判断(3)for循环for(循环初始变量;循环条件;循环变量的更新){循环操作;}循环次数固定的时候,优先选用for循环while、do-while、for三种循环的对比,需要重点看下4.3 跳转语句(1)break用在switch选择结构中,表示跳出switch选择结构用在循环结构中,表示跳出整个循环或结束整个循环用在二重循环结构中,表示结束内层循环,继续执行外层循环(2)continuecontinue只能用在循环结构中,表示结束本次循环,进入下一次循环用在二重循环结构中,表示结束内层循环的本次循环,进入下一次循环(3)return。
诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。
面向过程的基本单元是函数。
什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。
能够做什么(方法):告诉外界对象有那些功能。
后者以前者为基础。
大的对象的属性也可以是一个对象。
为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。
对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。
方法的定义非常重要。
方法有参数,也可能有返回值。
注意区分:对象(本身)、对象的实现者、对象的调用者。
分析对象主要从方法开始。
我们通过类来看待对象,类是对象的抽象。
其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。
对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。
这样才能使每个对象本身做成最好的。
对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。
实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。
可复用性是OOP的基础。
比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。
面向过程是先有算法,后有数据结构。
面向对象是先有数据结构,然后再有算法。
在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。
开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。
从语法上来看,一个类是一个新的数据类型。
在面向对象编程中,除了简单数据类型,就是对象类型。
定义类的格式:class Student{代码}注意类名中单词的首字母大写。
实例变量:定义在类中但在任何方法之外。
(New出来的均有初值)局部变量:定义在方法之中的变量。
局部变量要先赋值,再进行运算,而实例变量均已经赋初值。
这是局部变量和实例变量的一大区别。
Java_U1课堂笔记(一)初识Java一、配置Java环境变量:1、复制JDK安装路径,如:C:\Program Files (x86)\Java\jdk1.7.0_51\bin2、粘贴到我的电脑->属性->高级系统设置->环境变量->Path3、加上英文的分号4、验证是否配置正确:dos-->java -version进入DOS窗口的方法:运行(或快捷键windows键+r)二、Java程序编写三步骤:编写 .java编译:javac **.java运行java **三、使用jad反编译工具:DOS中切换至jad安装目录,如:C:\jad1.5.8g.win输入命令:jad -s java D:\t01\HelloWorld.class四、变量的使用:页脚内容1变量取名,命名规则类型数值:int、double、float(f)非数值:char、String类型名字= 值;int age=10;五、上机验证:System.out.println(5+3);System.out.println("5"+3);六、Scanner的使用,接收用户键盘输入Scannerimport java.util.Scanner;Scanner input=new Scanner(System.in);input.next();(相关方法,nextDouble()、nextFloat()、nextInt(等)bin:exejre页脚内容2libsrc.zip(二)数据类型一、数据类型转换自动类型转换:int num=100;double b=num;强制类型转换double num=100.9;int b=(int)num;二、运算符赋值运算符=算数运算符+ - * / % ++ --+= -= *= /= %=关系运算符> < >= <= == !=逻辑运算符&& || !页脚内容3条件运算符?:了解优先级即可三、流程控制1、if:基本ifif-else多重if嵌套if注意:条件是boolean值常见错误:if(num=5){}else{}大括号不省略多重if顺序问题注意:页脚内容4流程图的使用和问题的分析解决过程2、switch等值比较注意:(1)语法上的常见错误(2)和多重if的异同循环结构:解决重复性的操作简介高效(三)循环结构一:循环:(1)while循环while(条件){操作循环变量迭代}注意:页脚内容5代码缩进循环能否正常退出(2)do-while循环do{循环}while(条件);注意:代码缩进循环能否正常退出和while的区别:语法上、执行上(至少执行一次)(3)for循环for(变量初始化;条件;变量迭代){循环操作}页脚内容6注意:代码缩进循环能否正常退出执行顺序循环变量可以有多个二、双重循环双重循环的特点:外层循环进入一次,内层循环就要完整的执行一遍特点:外执行一次内执行一轮双重循环次数:外层循环次数*内层循环的次数实现的重点:页脚内容7(1)确定谁做外层循环,确定谁做内层循环(2)两层循环变量有没有规律性的关系1、打印图形:找规律矩形行i外层星星j内层1 52 53 54 55 5平行四边形行i外层内层:空格星星1 4=5-i 52 3=5-i 53 2=5-i 5页脚内容84 1=5-i 55 0=5-i 5等腰三角形行i外层内层:空格星星1 4=5-i 1=2*i-12 3=5-i 3=2*i-13 2=5-i 5=2*i-14 1=5-i 7=2*i-15 0=5-i 9=2*i-12、打印九九乘法表行i(1-9)第一个操作数i 第二个操作数(从1到i)三:循环应用1、分析需求:重复做一件事情前提条件(循环进入的条件)做什么事情(循环操作)页脚内容92、用代码解释选择一种合适的循环结构whiledo-whilefor根据所选择的结构套用语法while(条件){}do{}while(条件);for(循环变量初始化;条件;迭代){}3、容易出错的点(1)变量在何处声明例1:计算5门课平均成绩页脚内容10例2:for(int i=0;i<=6;i++){System.out.println(i);}int j=i;System.out.println(j);(2)没有适当的(合适的)跳出循环根本跳不出来根本进不去循环多或少循环了一次四、循环的跳转break:跳出整个循环continue:跳出本次循环,进入下次循环return:结束方法(了解即可)五、程序调试页脚内容11设置断点Debug->单步运行F5 F6观察变量(三)数组一、数组1、数组的基本使用(1)数组的作用一组相同数据类型的数数组也是变量,内存中一串连续的空间(2)数组的几个基本概念标识符(数组名字)元素下标:从0开始数据类型数组的长度(数组名字.length)(3)数组使用步骤声明数组页脚内容12int[] num;int num[];分配空间num=new int[8];赋值处理数据int[] num={5,8,7};int[] num=new int[]{5,8,7};(4)循环和数组结合的使用下标(0-数组.length-1)遍历时两种方法:方法一:传统for方法二://增强型for(foreach)for(int score:scores){sum+=score;页脚内容13}二、回顾数组变量,内存中一串连续的空间相同数据类型的一组数据数组的基本概念元素数据类型(数组类型)下标(0,数组.length-1)数组的长度:数组.length数组的基本使用声明数组(类型[] 数组名称或类型数组名称[])分配空间(数组名称= new 数据类型[5];)赋值(num[0]= ;)处理数据变量:基本数据类型页脚内容14int、double、float、char、boolean引用数据类型String、数组内存分布不同使用上不同.三、数组的典型使用1、求最大值、最小值(打擂台)2、插入算法(找位置)3、冒泡排序数组存储5个数字下标:0 1 2 3 4外层循环内层循环i:0第一轮+ j比较次数:4 =4:length-1页脚内容15i:1第二轮+ j比较次数:3=4:length-1i:2第三轮+ j比较次数:2 =4:length-1i:3第四轮+ j比较次数:1=4:length-1i+j=数组.length-1j=数组.length-1-i共比较几次?5个数字:4+3+2+1=106个数字:5+4+3+2+1=157个数字:6+5+4+3+2+1=21n个数字:(n-1)+(n-2)+(n-3)+.....+1=n*(n-1)/24、Arrays类的使用常用方法:页脚内容16sort().....记得查API帮助文档(帮助文档已经在网盘中提供了,如果大家在Oracle官网中没有下载,可以找中心的技术顾问老师提供网盘用户名和密码,登录后拿到帮助文档)数据类型基本数据类型int double char boolean 。
Java基础知识总结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中设置的路径下找。
java平台1、J2SE java开发平台标准版2、J2EE java开发平台企业版java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序。
不同系统上要安装对应的虚拟机才可以运行java程序开发步骤1、编写源文件 (.java)2、编译源文件为类文件(.class)可用J2SE或J2EE编译3、在虚拟机上运行注释//单行注释/* */多行注释java内容介绍java编程可以分成三个方向:1、java se (j2se)桌面开发 java中的基础中的基础2、java ee (j2ee)web开发3、java me (j2me)手机开发java se课程介绍java面向对象编程(基础)java图开界面开发java数据库编程java文件io流编程java网络编程java多线程编程java ee基础1java面向对象编程--数据库编程-->java sejava 基础2html--css--javascript-->div+cssjava ee中级部分Servlet--Jsp-->mvc模式java ee高级部分Struts--Ejb--Hibernate--Spring--Ajax(ext,dw2)-->ssh框架java之父gosling1990 sun启动绿色计划1 | 4451992 创建oak语言-->java1994 gosling参加硅谷大会演示java功能,震惊世界1995 sun正式发布java第一个版本,目前最新是jdk7.0java开发工具记事本、(jcreator、jbuilder退出舞台了)、netbean、eclipse如何选择开发工具先选择记事本,对java有一定了解后再使用eclipse高级开发工具为什么呢?1、更深刻的理解java技术,培养代码感2、有利于公司面试java语言的特点1、java语言是简单的2、java语言是面向对象的3、java语言是跨平台(操作系统)的[即一次编译,到处运行]4、java是高性能的java第一个程序hello.java运行java程序要安装和配置jdkjdk是什么?1、jdk全称java dvevlopment kit中文java开发工具包2、jdk是sun公司开发的3、jdk包括jre(java runtime envirnment)java运行环境、一堆java工具和java基础的类库(类共3600左右,常用类在150个左右)4、可以在下载**开发安装jdk,用户执行需要安装jre配置JDK添加环境变量即可windows下配置jdk在计算机属性--高级设置--环境变量--添加PATH将JDK所在路径指定即可。
程序员入学Java知识测试——精华总结J2SE部分,Java高新技术部分,7K面试题部分等入学要求的知识点总结!一、程序员—java概述与基础知识 (6)1、何为编程? (6)2、Java语言概述,历史、特点 (6)3、什么是跨平台性?原理是什么?JVM (7)4、Jre和Jdk的区别? (7)5、java虚拟机JVM (8)6、Java程序运行机制 (8)7、学习java注意的地方 (8)8、Java语法格式 (9)9、代码注释:单行//,多行/* */,文档注释/** */ (9)10、Java中的标识符 (9)11、java中的常量和变量 (9)12、Java成员变量和局部变量 (10)14、基本数据类型转换之向上转型和向下转换 (12)15、Java的运算符 (13)16、表达式和三目运算符 (13)17、程序流程控制 (14)18、三大循环结构: (16)19、嵌套循环与流程控制 (18)二、程序员—方法与数组 (19)1、什么是方法(Method)? (19)2、Java中方法的格式: (20)3、方法里的属性 (20)4、方法特点 (20)5、什么是方法的重载(Overload)? (21)6、可变参数 (22)7、数组简介: (23)8、一维数组的声明与初始化: (23)9、数组的使用: (24)10、分配内存空间 (26)11、二维数组: (27)12、操作数组的工具类-Arrays (27)13、Java5新特性对数组的支持: (28)三、程序员—面向对象(1) (29)1、什么叫面向对象? (29)3、构造方法 (30)4、static关键字 (31)5、匿名对象 (32)6、this关键字 (33)7、面向对象之封装 (33)8、访问修饰符 (34)9、类的设计分析 (34)10、面向对象之继承 (34)11、子类访问父类和方法覆写 (36)12、super关键字和调用父类构造方法 (36)13、面向对象之多态 (37)14、引用变量类型转换 (39)四、程序员—面向对象(2) (40)1、基本数据类型的包装类 (40)2、基本数据类型和包装类相互转换 (40)3、基本类型和String之间的转换 (41)4、Object类 (41)5、代码块 (42)6、构造方法的私有化 (44)7、Singleton模式(单例模式) 饿汉式和懒汉式 (44)8、final 关键字 (46)9、抽象类 (47)10、抽象类的体现-模板模式 (49)11、接口(interface) (51)12、接口的使用 (52)13、面向接口编程之制定标准和简单工厂模式 (52)14、面向接口编程之适配器模式 (54)15、接口和抽象类的比较 (55)16、匿名内部类 (56)17、枚举类 (57)五、程序员—异常处理和常用类 (59)1、异常 (59)2、异常处理格式 (60)3、多异常处理 (61)4、异常的分类 (62)5、声明异常(throws) (62)6、throw (63)8、throw和catch同时使用 (64)9、常用类 (65)10、String方法 (67)11、StringBuffer 与StringBuilder (69)12、Math和Random和UUID (72)13、Date和Calendar (73)六、程序员—线程技术 (78)1、进程和线程 (78)2、创建线程方式 (79)3、两种进程创建方式比较 (80)4、线程的生命周期 (82)5、控制线程 (82)6、多线程安全问题 (84)7、多线程安全问题的解决方法 (85)8、线程通信 (90)七、程序员—集合框架(1) (93)1、集合类& 容器 (93)2、Collection接口 (94)3、Iterator接口 (95)4、集合遍历输出方式 (95)6、TreeSet (99)7、List接口 (103)8、List接口中常用类 (105)9、Map接口 (108)八、程序员—集合框架(2) (111)1、Collections类 (111)2、Arrays (113)3、泛型(Generic) (114)4、泛型的使用 (114)5、声明多个泛型类型和通配符 (119)6、泛型的上限与下限 (119)7、泛型接口和方法 (122)8、泛型的嵌套(map例子) (122)九、程序员—IO操作(1) (123)1、IO的概述和File方法 (123)2、递归(Recursion) (125)3、文件过滤器java.io.FilenameFilter (127)4、流 (128)5、操作流的步骤(重点) (128)6、字节流和字符流 (130)7、文件拷贝 (132)8、字节→字符转换流 (134)9、自动关闭资源的try语句 (135)十、IO文件操作(2) (136)1、内存操作流 (136)2、打印流 (138)3、格式化输出 (139)4、标准流 (140)5、Scanner(简单文本扫描器) (142)7、合并流(SequenceInputStream) (146)十一、程序员—网络编程 (146)1、什么是网络编程? (147)2、网络通讯要素 (147)3、TCP和UDP的联系和用途 (148)4、InetAddress与Socket (149)5、UDP传输 (150)6、TCP传输 (154)8、小例子 (160)十二、程序员—反射机制 (162)1、反射的概念 (162)2、获得Class对象 (163)3、九个预定义Class对象 (164)4、利用Class获取类的属性信息 (165)5、Class中得到构造方法Constructor、方法Method、字段Field (167)6、利用反射创建对象 (172)7、使用反射调用方法 (175)8、使用反射调用可变参数方法 (177)9、使用反射操作字段 (178)10、反射和泛型-反射来获取泛型信息 (179)十三、程序员—反射机制 (182)1、GUI(图形用户界面) (182)2、布局管理器 (182)3、事件监听机制组成 (184)4、Dialog (191)5、菜单 (194)1、Eclipse的使用技巧 (198)2、静态导入(1.5特性,好处是不用写类名) (199)3、可变参数 (200)5、基本数据类型的自动拆箱与装箱 (201)6、枚举 (202)7、反射实现框架功能 (203)1JavaBean (205)2、内省综合案例和Beanutils工具包 (206)3、注解(Annotation) (208)4、泛型 (212)1、类加载器 (215)2、类加载器的委托机制 (216)3、一个类加载器的高级问题分析 (220)4、代理的概念与作用 (220)5、动态代理技术 (222)6、分析JVM动态生成的类 (222)8、实现类似spring的可配置的AOP框架 (229)程序员——面试题之交通灯管理系统 (233)1、面向对象的分析与设计 (234)2、Road类的编写 (235)3、Lamp类的编写 (236)4、LampController类的编写 (239)5、MainClass类的编写 (240)程序员——面试题之银行业务系统 (241)1、需求 (241)2、需求分析 (242)3、NumberManager类 (243)4、NumberMachine类 (243)5、CustomerType枚举类 (244)6、ServiceWindow类 (245)7、MainClass类与Constants类 (248)一、程序员—java概述与基础知识1、何为编程?编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。
javase基础笔记pdf
Java是一种面向对象的编程语言,广泛应用于各种领域。
学习Java编程语言是学习编程的第一步之一,在Java编程中,javase是基础知识,是每个Java程序员必须学习的。
针对初学者来说,一份好的javase基础笔记pdf是极其重要的。
它包含了Java编程的各种基础知识,如基本语法、变量、数据类型、运算符、条件语句、循环语句等等。
此外,还包括了Java中重要的面向对象的知识,如类、对象、继承、多态等等。
在javase基础笔记pdf中,学习者可以通过简单的例子来了解概念和构造,轻松掌握Java编程语言的基础知识。
同时,笔记还提供了一些练习题,让学习者可以自己动手编写代码来巩固知识。
与此同时,javase基础笔记也是进一步学习Java编程的基础。
后续学习中,学习者需要掌握的知识,如Java集合框架、多线程、网络编程等等,都是在javase基础知识的基础上所构建的。
总之,对于想要了解Java编程语言、成为一名Java程序员的学习者来说,javase基础笔记pdf是入门、巩固及进阶的关键所在。
javaSE(狂神上课笔记)JAVA(12.16-1.8)学习图不忘初⼼开源的博客平台1.Typecho2.WORDPRESS插⼊⽹页图⽚的⽅法右击检查,src,cv计算机快捷键ctrl+shift+tab切换应⽤程序alt+f4结束当前窗⼝ctrl+shift+esc打开任务管理器shift+del永久删除打开cmd的⽅式1.2.3.4.资源管理器的地址栏前⾯加上cmd空格路径5.以管理员⾝份打开课拿到它的最⾼权限常⽤的DOS命令# 盘符切换 e.g.进⼊D盘 D:#查看当前⽬录下的所有⽂件 dir#切换⽬录 cd (change directory) cd /d f:\IDE(这样便可进⼊f盘的IDE)#返回上⼀级⽬录 cd ..#去下⼀级⽬录 cd tmp(这样就去了tmp⽬录)#清理屏幕 cls(clear screen)#退出终端 exit#查看电脑ip ipconfig#打开应⽤打开画图⼯具 mspaint打开计算机 calc打开记事本 notepad#ping 命令ping (⽤来得到百度的ip地址)# ⽂件操作创建⽂件夹 md test(就创建了⼀个test⽂件夹) cd test(进⼊test⽂件夹)jianl新建⽂件 cd>a.txt删除⽂件 del a.txt删除(移除)⽬录(⽂件夹) rd test三⾼⾼可⽤,⾼性能,⾼并发jdk开发者⼯具包(8版本是主流)/jre(运⾏环境) /jvm java Development Kitjava Runtime Environmentjava Virtual Machine(java虚拟机)bin:有很多可执⾏⽂件include:因为jdk是⽤c和c++编写的,所以引⽤了许多c的头⽂件jre:java运⾏环境lib:Java的类库⽂件src.zip:Java基础类的源代码Java程序运⾏机制编译型:相当于把⼀本中⽂书全部翻译成英⽂书compile优点:执⾏速度快,对操作系统要求⽐较低(因此像windows,linux就会使⽤c/c++这种编译型语⾔)解释型:就相当于翻译官,⽤⼀下编译⼀下⽹页对速度要求不⾼,因此会使⽤解释型IDEA快捷键1. psvm直接⽣成⼀个main⽅法2. sout直接写出输出语句3. 直接去百度搜idea优化功能4. ctrl+d复制当前⾏到下⼀⾏5. fori6. alt+ins构造有参⽅法或⽆参⽅法7. ctrl+H:可以出现表⽰继承关系的侧边栏8. 数组名+.for⽣成for(int i:数组名){}IDEA功能⽤法1. idea查看.class⽂件:找到structer,右边添加out⽬录Java基础(基础不牢,地动⼭摇)01⽂档注释/** */中间会有 *,是有功能的02标识符(类名,变量名,⽅法名)只能以(A-Z或者a-z),美元$,或者下划线_开始不能⽤关键字作标识符03 数据类型注意:两个都是int型,但根据数学算出来是浮点,但输出仍是int(⽐如:10/20=0)解决⽅法:强制转换强类型语⾔(java),所有变量都必须先定义后使⽤。
Java内容介绍一、Java编程可以分成三个方向:1.Java se(j2se)桌面开发2.Java ee(j2ee)web开发3.Java me(j2me)手机开发二、Java se课程介绍1.Java面向对象编程2.Java图形界面3.Java数据库变成4.Java文件io流5.Java网络编程6.Java多线程三、Java语言的特点:1.Java语言是简单的2.Java语言是面向对象的3.Java语言是跨平台(操作系统)的,一次编译,到处运行。
4.Java语言是高性能的Jdk的配置:Jdk的全程是java development kit中卫java开发工具包Jdk是sun公司开发的Jdk包括jre(java runtime envirnment)java运行环境,一堆java工具和java基础类库。
Jdk的配置:添加环境变量即可。
变量值安装目录的bin文件夹目录如何运行你的java程序1、将hello.java编译成hello.class使用命令:javac hello.java2、运行hello.class使用命令:java hello//作者:hoochon//功能:在控制台显示hello world!//日期:2013.4.9//public:表示这个类是公共类,一个java文件中只能有一个public类//class:表示这是一个类//hello:类名(公共类的类名必须和文件名一致)public class hello{//一个主函数,相当于程序的入口public static void main(String[] args){System.out.println("Hello World!");}}Hello,world程序改进,让它成为一个简单的加法运算程序。
//作者:hoochon//功能:在控制台显示hello world!//日期:2013.4.9//public:表示这个类是公共类,一个java文件中只能有一个public类//class:表示这是一个类//hello:类名(公共类的类名必须和文件名一致)public class hello{//一个主函数,相当于程序的入口public static void main(String args[]){//执行语句//System.out.println("Hello World!");int a=10;int b=20;int result=a+b;System.out.println("结果是"+result);}}Java基本数据类型1.整数型:可以表示一个整数,常用的整数类型有:byte ,short,int,long;主要的区别是数据大小的范围:Byte 一个字节-128至127Short 二个字节-32768至32767Int 四个字节-2147483648至2147483647Long 八个字节范围公式:-2字节*8-1至2字节*8-1-12.浮点型:可以表示一个小数,常用的浮点型有float,double区别也是数据大小范围:3.布尔型:可以表示真或假4.字符型:可以表示单个字符。
Java编程语言基础第一章:初识java(1)相关知识JDK:目录结构(安装到java.home)JVM:管理内存、不同的操作系统需要对应不同版本的JVMJRE:Java程序运行环境的根目录Bin:编译器、解释器、各种工具、存放文件Lib:库文件Demo:演示例子Include:本地方法文件虚拟机:多线程索引定位:已知类和方法Ctrl+alt+↓(复制向下)(2)java技术平台介绍ME:移动端、安卓方向SE:标准版、基础核心、银行软件、安全性高EE:企业版、主要用于互联网程序开发(3)java编码的规范一行一条代码、注意换行和缩进、类名不可用void{}的使用位置,开始的{跟在一行代码的末尾,结束的}另起一行放置(4)编译三步走(写.java 译.calss行)一次编译,随处运行写:记事本编辑,后缀为 .java译:javac HelloWorld.java行:java HelloWorld①反编译方式:javap-c、eclips②格式要求public static void或static public void(三个不能少)String[]args 是数组,可以写成s③输出:计算未声明,就取整④有ln换行输出,无ln不换行(5)3种注释单行:// 多行:/* */ 文档注释:/** */(6)转义符换行:\n 水平制表格:\t【例】“STB\tJAVA” stb+“\t”+java 【变分非合】(7)ascII码表①排序:A对应65,a对应97【大小中文】第二章:变量、数据类型和运算符(1)命名规范①类名:大大(帕斯卡式) HelloWorld②变量:小大大(驼峰式) int myMoney=2000;③常量:final大大_ final int MY_MONEY = 2000;只能被赋值一次,从始至终不变(2)变量命名规则①首字母只能是字母_美元(钱),后面用字母_美元(钱)、数字②不能使用关键字(3)数据类型:【byte short int long、fdcb(1248,482不定 1字节=8bit)】①基本数据类型byte :字节型 short:短整型 int:整型 long:长整型(整数)float:单精度浮点型(整数、小数) double:双精度浮点型char:字符型单个字符 boolean:布尔类型②引用数据类型:String、数组、用户自定义、接口③Java中所有小数默认为double类型,如需赋值给float变量,后面加f 【例】float f =2.11f或2.11F小数④boolean可以为null⑤数据类型转换自动转换:兼容、目标大于源类型一个操作数为double,其他自动提升为double强制转换:(类型名)表达式,强制转换会丢失数据精度【例】double a = 3.14; int b =(int)a;(4)关系运算符(用来比较运算结果,只能用boolean判断正误)【例】boolean isBig = 5<7; 【含有重新录入、结束、退出,用boolean】(5)条件运算符(三元运算符,可以放在输出代码中)int min = 5<7?5:7;String result = Score >90? “奖励”:“惩罚”(6)自增自减num++即num+1、num--即num-1、num+=2即num=num+2++i(先加后用)、i++(先用后加)(7)取数【除余】int geWei = num%10int shiWei = num/10%10int baiWei = num/100%10int qianWei = num/1000(8)控制台录入【4步:13随机合法、2数组声明分配for】导包:import java.util.Scanner;int random =(int)(Math.random()*10); 产生随机创建对象:Scanner intput =new Scanner (System.in);数组:声明分配 for 提示输入:System.out.println(“”);if (input.hasNextInt()==true) 输入字符是否合法调用: String a= input.next(); 接受Stringint a= input.nextInt(); 接受intdouble a= input.nextDouble(); 接受double(1)结构化程序:顺序结构、循环结构、选择结构(2)if结构的种类①if——简单组合多条if、if、if,可执行多条②if、else——简单组合的分支③if、else if 、else——复杂组合的分支满足一个即退出、从小到大或从大到小④嵌套if(包含if、else)、else(包含if、else)——复杂逻辑判断(1)switch【用于数字】int a =1; 也可放入String类型switch(a){case 1:System.out.println(“”);break; 无break,显示匹配往后case 2:System.out.println(“”);break;Default:default默认在前面和后面,并不影响流程判断System.out.println(“”);break;(1)程序调试①Eclipes和MyEclipse共同特征:设置断点,启动调试②是针对运行有误。
Java知识——精华总结一、java概述与基础知识 (6)二、方法与数组 (19)三、面向对象(1) (28)四、面向对象(2) (39)五、异常处理和常用类 (59)六、线程技术 (77)七、集合框架(1) (93)八、集合框架(2) (110)九、IO操作(1) (123)十、IO文件操作(2) (135)十一、网络编程 (146)十二、反射机制 (162)十三、GUI界面 (181)十四、Java高新技术(1) (197)十五、Java高新技术(2) (205)十六、Java高新技术(3) (215)十七、面试题之交通灯管理系统 (233)十八、面试题之银行业务系统 (241)一、java概述与基础知识 (6)1、何为编程? (6)2、Java语言概述,历史、特点 (6)3、什么是跨平台性?原理是什么?JVM (6)4、Jre和Jdk的区别? (7)5、java虚拟机JVM (7)6、Java程序运行机制 (7)7、学习java注意的地方 (8)8、Java语法格式 (8)9、代码注释:单行//,多行/* */,文档注释/** */ (8)10、Java中的标识符 (8)11、java中的常量和变量 (9)12、Java成员变量和局部变量 (9)14、基本数据类型转换之向上转型和向下转换 (11)15、Java的运算符 (12)16、表达式和三目运算符 (12)17、程序流程控制 (13)18、三大循环结构: (15)19、嵌套循环与流程控制 (17)二、方法与数组 (19)1、什么是方法(Method)? (19)2、Java中方法的格式: (19)3、方法里的属性 (20)4、方法特点 (20)5、什么是方法的重载(Overload)? (21)6、可变参数 (22)7、数组简介: (22)8、一维数组的声明与初始化: (23)9、数组的使用: (24)10、分配内存空间 (25)11、二维数组: (26)12、操作数组的工具类-Arrays (27)13、Java5新特性对数组的支持: (28)三、面向对象(1) (28)1、什么叫面向对象? (28)2、类 (29)3、构造方法 (30)4、static关键字 (31)5、匿名对象 (32)6、this关键字 (32)7、面向对象之封装 (32)8、访问修饰符 (33)9、类的设计分析 (34)10、面向对象之继承 (34)11、子类访问父类和方法覆写 (35)12、super关键字和调用父类构造方法 (36)13、面向对象之多态 (37)14、引用变量类型转换 (38)四、面向对象(2) (39)1、基本数据类型的包装类 (39)2、基本数据类型和包装类相互转换 (40)3、基本类型和String之间的转换 (41)4、Object类 (41)5、代码块 (42)6、构造方法的私有化 (43)7、Singleton模式(单例模式) 饿汉式和懒汉式 (44)8、final 关键字 (46)9、抽象类 (46)10、抽象类的体现-模板模式 (48)11、接口(interface) (50)12、接口的使用 (51)13、面向接口编程之制定标准和简单工厂模式 (52)14、面向接口编程之适配器模式 (54)15、接口和抽象类的比较 (55)16、匿名内部类 (56)17、枚举类 (56)五、异常处理和常用类 (59)1、异常 (59)2、异常处理格式 (60)3、多异常处理 (60)4、异常的分类 (61)5、声明异常(throws) (62)6、throw (62)8、throw和catch同时使用 (64)9、常用类 (64)10、String方法 (66)11、StringBuffer 与StringBuilder (68)12、Math和Random和UUID (71)13、Date和Calendar (73)14、System (76)六、线程技术 (77)1、进程和线程 (77)2、创建线程方式 (78)3、两种进程创建方式比较 (79)4、线程的生命周期 (81)5、控制线程 (82)6、多线程安全问题 (84)7、多线程安全问题的解决方法 (85)8、线程通信 (89)七、集合框架(1) (93)1、集合类& 容器 (93)2、Collection接口 (94)3、Iterator接口 (94)4、集合遍历输出方式 (95)6、TreeSet (99)7、List接口 (103)8、List接口中常用类 (104)9、Map接口 (108)八、集合框架(2) (110)1、Collections类 (111)2、Arrays (112)3、泛型(Generic) (113)5、声明多个泛型类型和通配符 (118)6、泛型的上限与下限 (119)7、泛型接口和方法 (121)8、泛型的嵌套(map例子) (122)九、IO操作(1) (123)1、IO的概述和File方法 (123)2、递归(Recursion) (125)3、文件过滤器java.io.FilenameFilter (126)4、流 (127)5、操作流的步骤(重点) (128)6、字节流和字符流 (129)7、文件拷贝 (131)8、字节→字符转换流 (134)9、自动关闭资源的try语句 (134)十、IO文件操作(2) (135)1、内存操作流 (135)2、打印流 (137)3、格式化输出 (139)4、标准流 (140)5、Scanner(简单文本扫描器) (141)6、缓冲流 (144)7、合并流(SequenceInputStream) (145)十一、网络编程 (146)1、什么是网络编程? (146)2、网络通讯要素 (147)3、TCP和UDP的联系和用途 (147)4、InetAddress与Socket (148)5、UDP传输 (149)6、TCP传输 (153)8、小例子 (159)十二、反射机制 (162)1、反射的概念 (162)2、获得Class对象 (163)3、九个预定义Class对象 (164)4、利用Class获取类的属性信息 (165)5、Class中得到构造方法Constructor、方法Method、字段Field (167)6、利用反射创建对象 (172)7、使用反射调用方法 (175)8、使用反射调用可变参数方法 (176)9、使用反射操作字段 (178)10、反射和泛型-反射来获取泛型信息 (179)十三、GUI界面 (181)1、GUI(图形用户界面) (181)3、事件监听机制组成 (183)4、Dialog (190)5、菜单 (193)十四、Java高新技术(1) (197)1、Eclipse的使用技巧 (197)2、静态导入(1.5特性,好处是不用写类名) (199)3、可变参数 (200)5、基本数据类型的自动拆箱与装箱 (201)6、枚举 (201)7、反射实现框架功能 (203)十五、Java高新技术(2) (205)1、内省了解JavaBean (205)2、内省综合案例和Beanutils工具包 (205)3、注解(Annotation) (208)4、泛型 (211)十六、Java高新技术(3) (215)1、类加载器 (215)2、类加载器的委托机制 (216)3、一个类加载器的高级问题分析 (220)4、代理的概念与作用 (220)5、动态代理技术 (222)6、分析JVM动态生成的类 (222)8、实现类似spring的可配置的AOP框架 (229)十七、面试题之交通灯管理系统 (233)1、面向对象的分析与设计 (234)2、Road类的编写 (234)3、Lamp类的编写 (236)4、LampController类的编写 (239)5、MainClass类的编写 (239)十八、面试题之银行业务系统 (241)1、需求 (241)2、需求分析 (242)3、NumberManager类 (242)4、NumberMachine类 (243)5、CustomerType枚举类 (244)6、ServiceWindow类 (244)7、MainClass类与Constants类 (248)一、java概述与基础知识1、何为编程?编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。
java从入门到精通读书笔记(一)Java从入门到精通笔记入门篇•熟悉Java发展历史•安装JDK、Eclipse•编写Hello World程序•了解Java基本语法•掌握变量、数据类型、运算符、控制语句面向对象编程•了解面向对象的特点•掌握类和对象的概念•学习继承、封装、多态等基本概念•实现类的定义和对象的创建•学习重载和重写集合和IO•学习Java中的容器类•掌握ArrayList、HashSet、HashMap等集合的使用•熟悉Java中的IO操作•了解文件操作、序列化等内容网络编程•掌握socket通信•理解TCP/IP协议•学习HTTP协议•实现客户端和服务器高级Java特性•学习反射、注解等高级特性•掌握多线程编程•熟悉JVM架构•学习异常处理JavaWeb编程•掌握Servlet、JSP等技术•学习MVC框架•熟悉Web应用服务器•学习数据库编程总结•学习Java需要不断积累•遇到问题可以通过搜索引擎解决•不断实践,多写代码•持续学习新技术,保持竞争力入门篇Java语言是面向对象的编程语言,是一种广泛使用的计算机编程语言。
Java语言从1996年开始被发布,现在已被广泛应用于客户端和服务器端程序的开发。
在学习Java之前,需要先了解Java的发展历史。
安装JDK、EclipseJava的开发需要安装JDK和Eclipse。
JDK是Java开发工具包,其中包含了Java编译器等工具。
Eclipse是一款常用的Java IDE(集成开发环境),可以用于编写,调试和运行Java代码。
编写Hello World程序在学习Java语言之前,需要先学会编写Hello World程序,这是一个非常简单的程序,可以帮助初学者快速上手Java编程。
public class HelloWorld {public static void main(String[] args){System.out.println("Hello World!");}}了解Java基本语法Java是一种强类型的语言,需要对数据类型进行明确的定义。
尚硅⾕Java——宋红康笔记【day11-day18】day11Eclipse中的快捷键:* 1.补全代码的声明:alt + /* 2.快速修复: ctrl + 1* 3.批量导包:ctrl + shift + o* 4.使⽤单⾏注释:ctrl + /* 5.使⽤多⾏注释: ctrl + shift + /* 6.取消多⾏注释:ctrl + shift + \* 7.复制指定⾏的代码:ctrl + alt + down 或 ctrl + alt + up* 8.删除指定⾏的代码:ctrl + d* 9.上下移动代码:alt + up 或 alt + down* 10.切换到下⼀⾏代码空位:shift + enter* 11.切换到上⼀⾏代码空位:ctrl + shift + enter* 12.如何查看源码:ctrl + 选中指定的结构或 ctrl + shift + t* 13.退回到前⼀个编辑的页⾯:alt + left* 14.进⼊到下⼀个编辑的页⾯(针对于上⾯那条来说的):alt + right* 15.光标选中指定的类,查看继承树结构:ctrl + t* 16.复制代码: ctrl + c* 17.撤销: ctrl + z* 18.反撤销: ctrl + y* 19.剪切:ctrl + x* 20.粘贴:ctrl + v* 21.保存: ctrl + s* 22.全选:ctrl + a* 23.格式化代码: ctrl + shift + f* 24.选中数⾏,整体往后移动:tab* 25.选中数⾏,整体往前移动:shift + tab* 26.在当前类中,显⽰类结构,并⽀持搜索指定的⽅法、属性等:ctrl + o* 27.批量修改指定的变量名、⽅法名、类名等:alt + shift + r* 28.选中的结构的⼤⼩写的切换:变成⼤写: ctrl + shift + x* 29.选中的结构的⼤⼩写的切换:变成⼩写:ctrl + shift + y* 30.调出⽣成getter/setter/构造器等结构: alt + shift + s* 31.显⽰当前选择资源(⼯程 or ⽂件)的属性:alt + enter* 32.快速查找:参照选中的Word快速定位到下⼀个:ctrl + k* 33.关闭当前窗⼝:ctrl + w* 34.关闭所有的窗⼝:ctrl + shift + w* 35.查看指定的结构使⽤过的地⽅:ctrl + alt + g* 36.查找与替换:ctrl + f* 37.最⼤化当前的View:ctrl + m* 38.直接定位到当前⾏的⾸位:home* 39.直接定位到当前⾏的末位:end⾯向对象的特征之⼆:继承性 why?⼀、继承性的好处:① 减少了代码的冗余,提⾼了代码的复⽤性② 便于功能的扩展③ 为之后多态性的使⽤,提供了前提⼆、继承性的格式: class A extends B{}A:⼦类、派⽣类、subclassB:⽗类、超类、基类、superclass2.1体现:⼀旦⼦类A继承⽗类B以后,⼦类A中就获取了⽗类B中声明的所有的属性和⽅法。
【尚硅谷-IT精英计划】JavaSE学习笔记视频下载导航(Java学习路线图)JavaEE学科体系:Android学科体系:--------------------------------------JavaSE学习目录------------------------------------第1章:Java语言概述第2章:基本语法第3章:面向对象编程第4章:高级类特性1 第5章:高级类特性2 第6章:异常处理第7章:Java集合第8章:泛型第9章:注解& 枚举第10章:IO流第11章:多线程第12章:Java常用类第13章:Java反射第14章:网络编程【基础体系框架】--------------------------------第1章:Java语言概述-------------------------------1.1 基础常识软件:系统软件和应用软件人机交互方式:图形化界面和命令行方式常用的DOS命令:dir : 列出当前目录下的文件以及文件夹md : 创建目录rd : 删除目录cd : 进入指定目录cd.. : 退回到上一级目录cd\: 退回到根目录del : 删除文件exit : 退出dos 命令行---->学会如何在DOS命令下编译并运行java源程序(重点):javac.exe java.exe1.2 Java语言概述了解语言的分代:第一代:机器语言第二代:汇编语言第三代:高级语言(面向过程& 面向对象)1.3 Java程序运行机制及运行过程Java语言的特点:①纯面向对象性:类&对象;面向对象的三大特性:封装性、继承性、多态、(抽象)②健壮性:----->Java的内存回收机制③跨平台性:一次编译,到处运行。
----->JVM1.4 Java语言的环境搭建:掌握下载、安装JDK,并且配置环境变量(重点)1)JDK 和JRE 以及JVM的关系2)JDK的安装3)配置path环境变量path:window执行命令时所需要搜寻的路径。
将D:\Java\jdk1.7.0_07\bin复制在path环境变量下。
1.5 开发体验—HelloWorldpublic class HelloWorld{public static void main(String[] args){System.out.println("HelloWorld!!");}}1.6 小结第一个程序1) Java源文件以“java”为扩展名。
源文件的基本组成部分是类(class),如本类中的HelloWorld类。
2) 一个Java源程序中可以存在多个class类,但是最多只能有一个类声明为public.若存在声明为public的类,那么这个源程序文件的名字必须以此类的类名来命名3) 程序的入口是public static void main(String[] args){} 称为主方法。
它的写法是固定的。
4) Java方法由一条条语句构成,每个语句以“;”结束。
5) Java语言严格区分大小写6) 大括号都是成对出现的,缺一不可,用于表明类中成员的作用范围。
1.7 常见问题及解决方法1.8 注释作用:提高了代码的阅读性;调试程序的重要方法。
三种注释:当行注释://注释的内容多行注释:/*注释的内容*/文档注释(Java所特有的,可以为javadoc命令所解析):/** 注释的内容*/ 1.9Java API文档:API:application programming interface--------------------------------第2章:基本语法-------------------------------2.1关键字& 保留字被Java语言赋予了特殊含义,用做专门用途的字符串(单词)2.2标识符凡是自己可以起名字的地方都叫标识符。
通常有:类名、变量名、方法名。
包名、接口名、。
规则:(必须按照如下的规则执行,一旦某规则不符合,编译运行时就会出问题)由26个英文字母大小写,0-9 ,_或$ 组成数字不可以开头。
不可以使用关键字和保留字,但能包含关键字和保留字。
Java中严格区分大小写,长度无限制。
标识符不能包含空格。
命名的习惯:(如果不遵守,实际上程序编译运行也不会出问题)包名:多单词组成时所有字母都小写:xxxyyyzzz类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz常量名:所有字母都大写。
多单词时每个单词用下划线连接:XXX_YYY_ZZZ 2.3变量1.变量的分类1)存在的位置的不同:成员变量(属性、Field)(存在于类内部,方法体的外部)和局部变量(方法体的内部、构造器的内部、代码块的内部、方法体或构造器的形参部分)2)数据类型的不同:基本数据类型(8种)整型:byte(1个字节)、short、int(默认值类型)、long(后缀是l或L)。
浮点型:float(后缀是f或F)和double(默认值类型)。
布尔型:boolean (只有两个值:true和false,绝对不会取值为null)字符型:char(1个字符)引用数据类型:类(比如:String字符串类型)、接口、数组2.如何声明:变量的类型变量的名字初始化值(显式的初始化、默认初始化)int i;i = j + 12;boolean b = false;String str = "atguigu";Customer c = new Customer();3.变量必须先声明后使用4.使用变量注意:变量的作用域:一对{ }之间有效初始化值5.自动类型转化&强制类型转化(重点)(不包含boolean型,及String型)1)强制类型转化时,可能会损失精度。
2.4进制十进制二进制八进制十六进制1.进制之间的转化:会将-128到127范围内的十进制转化为二进制& 能将一个二进制数转换为十进制数(延伸:十进制、二进制、八进制、十六进制)2.对于几类基本类型的数据的某个具体值,能够用二进制来表示。
同时,如果给出一个数据的二进制,要能够会转化为十进制!正数:原码、反码、补码三码合一。
负数:原码、反码、补码的关系。
负数在计算机底层是以补码的形式存储的。
2.5运算符算术运算符赋值运算符比较运算符(关系运算符)逻辑运算符“&”和“&&”的区别:&:当左端为false时,右端继续执行&&:当左端为false时,右端不再执行“|”和“||”的区别:|:当左端为true时,右端继续执行||:当左端为true时,右端不再执行位运算符<< >> >>> & | ^ ~三元运算符1.三元运算符与if-else语句的联系1)三元运算符可以简化if-else语句2)三元运算符一定要返回一个结果。
结果的类型取决于表达式1和2的类型。
(表达式1和2是同种类型的)3)if-else语句的代码块中可以有多条语句。
2.6流程控制条件判断:if(表达式1){//执行语句}else if(表达式2){//执行语句}else{//执行语句}1.一旦执行条件判断语句,有且仅有一个选择“路径”里的代码块被执行。
2.如果多条表达式间是“互斥”关系,彼此是可以调换顺序。
如果多条表达式间存在“包含”关系,一定要将范围小的表达式写在范围大的表达式对应的语句的上面。
3.选择判断语句可以“嵌套”4.若执行语句只有一句,那么对应的一对{}可以省略。
选择结构:switch-case1.结构2.表达式可以存放的数据类型:int byte short char String 枚举3.表达式存放是数值或者说是离散的点所代表的常量,绝对不是取值范围。
3.default是可选的。
default的位置也不是固定的,当没有匹配的case时,执行default4.break在switch-case中的使用。
当执行到某条case语句后,使用break可以跳出当前的switch语句。
如果此case中没有break,那么,程序将依次执行下面的case语句,直至程序结束或者遇到break。
【switch-case 与if-else if-else的联系】1.表达式是一些离散的点,并且取值范围不是很大,要求是int byte short char String 枚举类型之一。
建议使用switch-case。
执行效率更高2.如果表达式表示的是范围(或区间)、取值范围很大,建议使用if-else if-else循环结构:①初始化条件②循环条件部分③循环体部分④迭代部分1.for循环for(①;②;④){③}执行顺序:①-②-③-④-②-③-④-…-②-③-④-②截止//死循环:for(;;){//要循环执行的代码。
}2.while循环①while(②){③④}//死循环:while(1>0){//要循环执行的代码}注意:for循环和while循环之间可以相互转化!3.do-while循环①do{③④}while(②);//程序至少执行一次!掌握:1.会使用for循环和while循环2.能够实现for循环和while循环的相互转化。
循环可以相互嵌套例题1.九九乘法表;例题2.输入1-1000之间的所有质数2.7 关键字:break & continuebreak1.使用范围:循环结构或switch-case结构中。
2.在循环结构中:一旦执行到break,代表结束当前循环。
continue1.使用范围:循环结构2.在循环结构中:一旦执行到continue,代表结束当次循环。
相同点:如果break或continue后面还有代码,那么这些代码将不会被执行。
所以当有代码,编译会出错!如何使用标签,实现结束指定“层次”的循环。
(理解)例题:class Test{public static void main(String[] args){for(int i = 1 ;i <= 100;i++){if(i % 10 == 0){break;//continue;//下面不能写入任何代码}System.out.println(i);}}}2.8数组1.如何创建一维数组1)数组的声明:int[] i ; String[] str; Animal[] animal;2)数组的初始化:①动态初始化:i = new int[4]; //i[0]开始,至i[3]结束。