尚硅谷-IT精英计划_JavaSE内部学习笔记

合集下载

尚硅谷java学习计划

尚硅谷java学习计划

尚硅谷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知识点归纳总结

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基础学问点归纳对于刚刚接触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。

JavaSE笔记1

JavaSE笔记1
join(Objext[] array,String str)将数组中的元素链接成字符串,是split()的反操作
leftPad(string str ,int size,char padChar)向字符串str左侧添加若干个字符使之达到SIZE长度
rightPad (string str ,int size,char padChar)向字符串stry右侧添加若干个字符使之达到SIZE长度
replace(int start, int end, String str);替换,
Replaces the characters in a substring of this sequence with characters in the specified String.
insert(int offset, String str) offset位置插入str。
1) get(int field) ;返回给定日历字段的值。
2) set(int field, int value); 将给定的日历字段设置为给定值。
set(int year, int month, int date, int hourOfDay, int minute, int second)
已过时。 该方法无法将字节正确地转换为字符。从 JDK 1.1 开始,完成该转换的首选方法是使用带有 Charset、字符集名称,
或使用平台默认字符集的 String 构造方法
String重写了Object的equals方法
equals(Object anObject); 将此字符串与指定的对象比较。区分大小写。
indexOf(String str, int fromIndex):返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。

java-课堂笔记-第一章至第八章知识点梳理

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。

JavaSE笔记2

JavaSE笔记2
readLine()
从此文件读取文本的下一行。
seek(long pos)
设置到此文件开头测量到的文件指针偏移量,在该位置发生下一个读取或写入操作。
getFilePointer()
返回此文件中的当前偏移量。
============================================================================================================
测试此抽象路径名表示的文件是否是一个目录。
isFile()
测试此抽象路径名表示的文件是否是一个标准文件。
listFiles()
返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
listFiles(FileFilter filter)
返回此抽象路径名的绝对路径名字符串。
getCanonicalPath()
返回此抽象路径名的规范路径名字符串。
lastModified()
返回此抽象路径名表示的文件最后一次被修改的时间。
isDirectory()
谁知情谁处理,谁负责谁处理,谁导致谁处理。
Java中错误的顶级类:Throwable类
Throwable 有两个子类:Error 和Exception。
Error:一般是底层的不可恢复的错误。通常都是虚拟机级别的异常。程序(通过代码)无法解决。
Exception异常,程序级别异常,可以通过代码的形式捕获异常,并进行相应的处理。
mkdir()
创建此抽象路径名指定的目录。
mkdirs()
创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。

(完整word版)Java学习笔记(必看经典)

(完整word版)Java学习笔记(必看经典)

诚信、创新、开放、合作JAVA的面向对象编程--------课堂笔记面向对象主要针对面向过程。

面向过程的基本单元是函数。

什么是对象:EVERYTHING IS OBJECT(万物皆对象)所有的事物都有两个方面:有什么(属性):用来描述对象。

能够做什么(方法):告诉外界对象有那些功能。

后者以前者为基础。

大的对象的属性也可以是一个对象。

为什么要使用面向对象:首先,面向对象符合人类看待事物的一般规律。

对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节。

方法的定义非常重要。

方法有参数,也可能有返回值。

注意区分:对象(本身)、对象的实现者、对象的调用者。

分析对象主要从方法开始。

我们通过类来看待对象,类是对象的抽象。

其次,采用面向对象方法可以使系统各部分各司其职、各尽所能。

对象之间的耦合性一定要低(比如不同硬盘和不同主板之间的关系)。

这样才能使每个对象本身做成最好的。

对于对象的要求:高内聚、低耦合,这样容易拼装成为一个系统。

实现高内聚就是要最大限度低提高复用性(复用性好是因为高内聚)。

可复用性是OOP的基础。

比较面向过程的思想和面向对象的思想:面向过程的思想:由过程、步骤、函数组成,以过程为核心;面向对象的思想:以对象为中心,先开发类,得到对象,通过对象之间相互通信实现功能。

面向过程是先有算法,后有数据结构。

面向对象是先有数据结构,然后再有算法。

在用面向对象思想开发的过程中,可以复用对象就进行复用,如无法进行复用则开发新的对象。

开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能。

从语法上来看,一个类是一个新的数据类型。

在面向对象编程中,除了简单数据类型,就是对象类型。

定义类的格式:class Student{代码}注意类名中单词的首字母大写。

实例变量:定义在类中但在任何方法之外。

(New出来的均有初值)局部变量:定义在方法之中的变量。

局部变量要先赋值,再进行运算,而实例变量均已经赋初值。

这是局部变量和实例变量的一大区别。

尚硅谷Java学习笔记

尚硅谷Java学习笔记
java 语言的主要特性............................................................................................................... 24 Java 技术体系平台................................................................................................................... 25 Java 在各领域中的应用...........................................................................................................25 Java 语言的特点....................................................................................................................... 26 Java 两种核心机制................................................................................................................... 26
JVM.................................................................................................................................... 27 垃圾回收.....................
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

【尚硅谷-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]结束。

相关文档
最新文档