javaSE学习笔记
- 格式:doc
- 大小:46.50 KB
- 文档页数:3
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关键字。
JAVASE学习笔记⽣产者与消费者:1public class ProducerConsumer {2public static void main(String[] args) {3 Basket bs=new Basket();4 Producer p=new Producer(bs);5 Consumer stu1=new Consumer("张东",bs);6 Consumer stu2=new Consumer("王强",bs);7 Consumer stu3=new Consumer("赵璐",bs);8new Thread(p).start();9new Thread(stu1).start();10new Thread(stu2).start();11new Thread(stu3).start();12 }13}1415class ManTou {16int id;17 ManTou(int id){18this.id=id;19 }20public String toString(){21return "第"+id+"个馒头" ;22 }23}2425class Basket {26int index = 0;27 ManTou[] mt = new ManTou[10];2829public synchronized void push(ManTou ton) {30while (index == mt.length) {31try {32this.wait();33 } catch (InterruptedException e) {34 e.printStackTrace();35 }36 }37this.notifyAll();38 mt[index] = ton;39 index++;40 }41public synchronized ManTou pop() {42while (index == 0) {43try {44this.wait();45 } catch (InterruptedException e) {46 e.printStackTrace();47 }48 }49this.notifyAll();50 index--;51return mt[index];52 }5354}5556class Producer implements Runnable{57 Basket bs= null;58 Producer(Basket bs){59this.bs=bs;60 }61public void run(){62for(int i=1;i<=15;i++){63 ManTou mt=new ManTou(i);64 bs.push(mt);65 System.out.println("李师傅⽣产了"+mt.toString());java 类的初始化顺序⽗类--静态变量⽗类--静态初始化块⼦类--静态变量⼦类--静态初始化块⼦类main⽅法⽗类--变量⽗类--初始化块⽗类--构造器⼦类--变量⼦类--初始化块⼦类--构造器上⾯所说有⼀点是错的,即静态不管是变量还是初始化块都会按顺序加载,别⼈的垃圾博客误⼈⼦弟啊!66 try {67 Thread.sleep((int )(Math.random()*100));68 }catch (InterruptedException e){69 e.printStackTrace();70 }71 }72 }7374 }757677 class Consumer implements Runnable{78 Basket bs= null ;79 String name;80 Consumer(String stu,Basket bs){81 this .bs=bs;82 name=stu;83 }84 public void run(){85 for (int i=1;i<=5;i++){86 ManTou mt=bs.pop();87 System.out.println(name+"消费了"+mt.toString());88 try {89 Thread.sleep((int )(Math.random()*1000));90 }catch (InterruptedException e){91 e.printStackTrace();92 }93 }94 }95 96}View Code1 public class Interview_02 extends X{2 Interview_02(){3 System.out.println("Z");4 }5 Y y = new Y();67 public static void main(String[] args) {89 new Interview_02();1011 }12131415}1617class X{18 Y b = new Y();19 X(){20 System.out.println("X");21 }22}2324class Y{25 Y(){26 System.out.println("Y");27 }28 }View Code执⾏结果为:YXYZ类型通配符上限通过形如Box<? extends Number>形式定义,相对应的类型通配符下限为Box<? super Number>形式,其含义与类型通配符上限正好相反assertEquals 函数原型1:assertEquals([String message],expected,actual)参数说明:message是个可选的消息,假如提供,将会在发⽣错误时报告这个消息。
1、课程名称:JA V A SE基础知识2、知识点2.1、上次课程的主要知识点1、在Oracle的学习之中有以下几点必须重点掌握:·数据的查询和更新操作、事务处理;·表的建立、约束的使用、序列的使用;·表的设计范式应该是理解。
2.2、本次预计讲解的知识点1、JA V A学习层次;2、Java简介及JDK的安装及配置;3、Java SE的基础程序设计;4、数组及方法的使用。
3、具体内容3.1、Java的学习层次从程序的开发来讲,Java语言是整个JA VA EE体系的核心基础部分,在这一部分之中,只有将核心概念掌握透彻了,才有可能为以后的学习提供方便。
知识点的学习:可以根据每一个关键字或者是知识点,联想到其所对应的程序及其概念,以及各个注意事项。
在整个JA VA基础部分之中,有以下三个主要部分组成:·JA VA SE的基础部分:基本程序的一个恢复以及数组及方法的使用;·Java SE的面向对象:此部分概念很多,而且必须全部记下;·Java SE的应用部分:类集、IO、类库、JDBC等等。
其他的有许多的了解部分:多线程、网络编程;理解的部分:Java SE 1.5的提供的各种新特性。
在以上的所有知识之中按照重要性来讲,一共有如下几部分:·面向对象:所讲解的一切都是为了抽象类和接口服务的;·类集部分:为数据结构实现;·IO:面向对象的完美体现;·JDBC:为以后的JA VA EE开发做准备呢。
3.2、Java简介(理解)Java:是一门编程语言,而且现在已经形成了一自己的一套完整的开发体系,被大多数的公司所支持,所以现在的Java 已经不再纯粹的作为一门语言出现了,更多的是作为一个行业的开发标准出现了。
从整个行业发展来讲,Java平台、.NET平台、Adobe FLEX等已经算是将编程霸占的已经足够多了,因为这些公司的实力较大。
javase手写笔记以下是一个简单的Java SE手写笔记,包括Java SE的主要概念和常用API:一、Java SE基础1. Java是一种面向对象的编程语言,具有简单、安全、可移植等特点。
2. Java SE是Java的标准版,提供了Java的核心类库和工具,用于开发Java应用程序。
3. Java程序由类组成,每个类包含变量和方法。
4. Java程序通过主类(带有main方法的类)启动。
5. Java程序通过编译生成字节码文件(.class文件),然后由Java虚拟机(JVM)解释或编译成本地代码执行。
二、常用API1. String类:用于处理字符串。
2. StringBuilder和StringBuffer类:用于构建和修改字符串。
3. Math类:用于数学运算。
4. Date和Calendar类:用于日期和时间处理。
5. File类:用于文件操作。
6. IOException类:用于处理输入输出异常。
7. ArrayList、LinkedList和Vector类:用于存储和操作对象列表。
8. HashMap和Hashtable类:用于存储和操作键值对。
9. TreeSet和TreeMap类:用于存储和操作排序的集合。
10. HashSet和HashMap类:用于存储和操作无序的集合。
11. Iterator接口:用于遍历集合。
12. Enum类:用于定义枚举类型。
13. Comparable接口:用于实现对象的比较。
14. Comparator接口:用于实现对象的比较器。
15. Runnable接口:用于实现多线程程序中的任务。
16. Thread类和ThreadGroup类:用于管理和控制线程。
17. System类:提供了一些与系统相关的属性和方法,如系统属性、环境变量等。
1.Java 三种核心机制java虚拟机,垃圾收集机制,代码安全机制Java虚拟机实现平台的无关行面对对象编程的三个特性:继承,多态,封装2.高级编程语言类型编译型和解释型java为两者的结合3.数据的封装把属性声明为私有,通过声明公开的方法来对数据进行操作4.数据类型Byte 1字节(-128-127) Short 2字节Int 4字节Long 8字节Float 4字节Double 8字节Char Stringdouble 3.0/0.0 无穷大0.0/3.0 0.0-3.0/0.0 负无穷大0.0/0.0 NaN //no a number十进制八进制要求0开头如012 十六进制以0x或0X开头如0x12运算符移位运算符a<<b 二进制的a逐位左移b位空出来的补0a>>b 带符号右移b位,空出来的补原来的符号(0或1)a>>>b 无符号右移b位空出来的补0自增自减运算符j=i++ 先运算j=i 再运算i=i+1j=++i 先运算i=i+1 再运算j=i数据转换途径Byte → short → int → float → doublechar → int →long→ double按顺序自动转化,逆行则需要强制类型转化break和continue用法break 终结当前循环可以与跳转标签联合使用p1: ----- ;break p1;//则跳出到p1标记的语句处continue跳出当次循环,继续下次循环类的访问控制public 类可以在任何场合被引入和使用,非public l类只能在所在包中被调用类成员访问控制方法重写Override在子类中根据需要对父类中继承来的方法进行重新定义规则:1.重写方法必须和被重写方法具有相同的方法名称,参数列表和返回值类型2.重写方法不能使用被重写方法更严格的访问权限(原方法为public ,重写就不能为其他的如private或protected或缺省)3.不允许抛出被重写方法范围更大的异常类型注意:协变类型,重写时返回类型可以不一样,但必须是被重写方法返回类型的子类方法重载Overload在一个类中存在多个同名方法的情况称为方法重载,重载方法参数列表必须不同关键字super 和this用super 引用父类中的成分在子类中使用super(<参数列表>)调用父类的构造方法,子类中没有显示调用构造方法的话会自动this 可以在构造方法的第一行用this调用其他重载的构造方法super和this调用构造方法只能选择一个使用或者都不用,并且要放在第一行关键字static在java类声明属性,方法,内部类时,可使用static作为修饰符。
Java学习笔记-JavaSE概述1. 课程纲要计算机语言发展简史Java 发展简史Java 特性Java 程序的加载与执行J2SE 安装与配置开始第一个Java 程序public class 和class 的区别2.内容2.1、计算机语言发展简史主要分为三个阶段:a) 第一代:机器语言b) 第二代:低级语言c) 第三代:高级语言2.2、Java 发展简史1. Java 是一种语言,具有自己的语法和数据结构2. Java 来自于sun ,sun 指的是斯坦福大学网络3. 具体发展历程Java的具体发展历程时间描述1991~1995 Sun 为了占领智能消费电子产品市场,由james gosling负责该项目,来开发Oak(橡树)语言1995 将Oak 改名为Java,当时也是window95版本的发布1996 发布JDK1.01997 发布JDK1.11998 发布JDK1.2,将该版本命名为J2SDK , 将Java更名为Java 2 1999 1999 将java 分为三大块:J2SE (Java 标准版)、J2EE(Java 企业版)、J2ME(Java 微型版本<android>)2000 发布J2SE1.32002 发布J2SE1.42004 此时不再叫J2SE1.5,叫5.02005 2005 Java 10 周年,将J2SE 改为J A V A SE、将J2EE 改为J A V A EE、将J2ME 改为J A V AME2006 发布J A V A SE 62011 7 月J A V ASE 7最新JavaOne大会上透露Java8,java9计划J A V A SE(标准版)、J A V A EE(企业版)、J A V A ME(微型版本)之间的关系JA V A EE JA V A MEJA V A SE2.3、Java 语言特性简单性面向对象可移植性(一次编译,到处运行)JVM健壮性(自动垃圾回收机制,GC)多线程2.4、Java 的加载与执行编译的过程 解析成二进制文件2.5、开始第一个 Java 程序2.5.1、J2SE 的安装1. 下载 J2SE 安装程序2. 进行安装2.5.2、搭建开发环境1. 显示扩展名2. 标题和地址栏最好显示完整路径3. UltraEdit 最好去除备份4. 常用命令Cd 目录名称,进入目录Xxxx.java(源文件) .class (字节码文件)类装载器 Java 虚拟机(JVM ) 操作系统 硬件平台Cd .., 退回上级目录Dir, 显示文件或目录Del 文件名, 删除文件5. path,classpath (环境变量)主要是为了检索文件方便,如果执行某个文件,不用到文件所在目录执行,那么操作系统会在path 路径中检索Classpath 为类路径,是java 运行时查找类文件的路径6.在命令行执行javac,如果出现如下显示,说明正常编译HelloWorld 程序public class HelloWorld {public static void main(String[] args) {System.out.println("Hello World");}}如何编译Javac文件名(完整的文件名称,含扩展名),如:javac HelloWorld.java以上会形成一个HelloWorld.class 文件,说明编译成功了开始运行HelloWorld 程序, 如何运行?采用java class 文件名(不要扩展名),如:java HelloWorld第一个程序,成功运行更换目录执行HelloWorld 程序,会出现类不能找到,主要原因是没有设置classpath,classpat h主要的作用是, 方便java 虚拟机加载class 文件, 配置方式:我的电脑—环境变量解释HelloWorld 程序//public 代表,全局的含义//采用class 来定义类的名称//HelloWorld 是类的名称,注意类的名称区分大小写public class HelloWorld {//public 代表,全局的含义//static, 表示是静态的//void, 表示没有返回值//main, 入口方法,方法的参数也不能改变public static void main(String[] args) {System.out.println("Hello World");}}Java 注释在程序运行时是不执行的,注释主要有三种方式// 单行注释多行注释/*多行注释*/多行注释,可以生成java doc 文档/*** 多行注释* 多行注释*/2.6、public class 和class 的区别类的定义有两种方式:public class 类名class 类名采用public class 来声明class,那么文件名必须和类名完全一致(包括大小写),如果文件名和类名不一致,将会出现如下错误:代码示例,文件名为HelloWorld1.javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello World");}}采用class 来声明类,文件名可以任何合法的文件名称,文件名不需要和Class 类一致但生成的class 文件名称和类名一致,不和原文件名称一致如何执行?在一个Java 文件中,可以声明多个类,如:public class HelloWorld3 {public static void main(String[] args) {System.out.println("Hello World");}}//在一个java 源文件中只能有一个class 被public 修饰//public class A{//}class A {}需要注意:只能有一个类采用public class 进行声明。
1根本知识点1.JDK〔Java Developer Kit〕2.Applet 小应用程序init() start() stop() destroy()没有构造方法3.ANSI America National Standard Institute (ANSI编码在不同国家是不一样的)4.小技巧:交换文本中所有空行 ^\s*\n 同时改一下option5.习惯 Java源文件名词第一个大写,包名小写;6.晋级三个因素:1.进步效率。
2.简化书写。
3.进步平安性。
7.Javac Test.java 编译Java Test 运行 java.exe 是JVM8.打包编译javac –d . test.java9.Main 方法的args数组用来存放命令参数〔command arguments〕10.命名规那么字符,$,下划线开头11.防止用单个字母命名变量尽可能在他被使用的地方附近定义12.>> 算数运算符 >>> 逻辑运算〔高位补零〕13.值域小的可以直接赋值给值域大的;〔自动类型提升〕14.数组1.声明时可以不指定大小,使用时必须指定,以便向系统申请指定的空间;2.type[] arrayName=new type[size];3.每个数组都有成员变量length 下标最大为length-14.Type[] arr1,arr2[]等价于 arr1[],arr2[][]; arr1和arr2维数不同,不能赋值;15.Java各种循环的判别式都是Boolean类型的;16.只有成员变量,系统才自动赋一个默认值对于局部变量,必须初始化;17.素数的判断for(int num=2;num<=10000;num++,flag=false){for(int i=2;i<Math.sqrt(num);i++){if(num%i==0){flag=true;break;//不是素数}}If(flag==false){//是素数}}18.Java编程语言只有值传递参数〔对象的引用,对象的值〕19.Java整数默认为int型,小数默认为double型20.非静态方法不能出如今Main〔〕函数中21.哈希码是由对象的实例域产生的一个整数,假设自定义类,就要实现这类的hashcode〔〕22.可变参数:其实就是上一种数组参数的简写形式。
javase的知识点JavaSE(Java Standard Edition)是Java平台的标准版本,它为开发和部署桌面、嵌入式和服务器应用程序提供了基础。
以下是一些JavaSE的重要知识点:1. 数据类型和变量:JavaSE中包括基本数据类型(如int、double和boolean)和引用数据类型(如字符串和数组)。
了解各种数据类型的特性以及变量的声明和初始化方法很重要。
2. 控制流语句:JavaSE支持常见的控制流语句,如条件语句(if-else和switch)、循环语句(for、while和do-while)和跳转语句(break和continue)。
熟悉这些语句的用法能够编写更具有逻辑性和可读性的代码。
3. 面向对象编程(OOP):JavaSE是一门面向对象的编程语言,包括类、对象、继承、封装、多态等概念。
理解OOP的基本原则和常用设计模式,能够编写可重用、可维护和可扩展的代码。
4. 异常处理:JavaSE使用异常机制来处理运行时错误。
了解异常的类型、如何捕获和处理异常以及如何定义自定义异常类,能够使程序具备更好的错误处理机制。
5. 输入输出(I/O):JavaSE提供了灵活的I/O类和接口,用于读写数据流、文件和网络通信。
熟悉常用的输入输出操作能够使程序与外部环境进行数据交互。
6. 集合框架:JavaSE提供了丰富的集合类和接口,如List、Set、Map等。
了解集合的特性和常用操作,能够高效地处理和组织数据。
7. 线程编程:JavaSE支持多线程编程,可以同时执行多个任务。
了解线程的生命周期、同步机制和线程池的使用方法,能够提高程序的并发性和性能。
8. 常用类库:JavaSE提供了许多常用的类库,如字符串处理、日期时间操作、数学计算等。
熟悉这些类的用法,可以方便地实现各种常见功能。
以上仅是JavaSE中的部分重要知识点,掌握这些知识可以帮助开发人员编写高质量、可靠和可维护的Java程序。
进制转换1、十进制转二进制、八进制、十六机制。
2、二进制转十进制、八进制、十六进制。
3、二进制的正转负、负转正;4、转义字符:八进制转义就是将十进制的ASCII码转换成八进制十六进制转义就是将十进制的ASCII码转换成十六进制Java环境配置先javac编译,后Java解释:源代码--》机器码源代码--》逐条的翻译解释运行运行步骤:Java的源文件,Hello.javajavac 编译器字节码文件Hello.classjavac d:\data\Hello.javajava –classpath d:\data Hello 须完全限定命名法,不能java d:\data\Hello. 是指先到当前路径下找java.class,找不到到d盘下的data目录下找。
java环境配置环境变量path:*JAVA_HOME*\binJAVA_HOME: d:\java\jdk1.8.0._144 (经常改变JDK安装路径的情况下)目的:希望我的javac,Java这些命令在任何路径下都能识别和使用配置方式:临时配置:情况1:最后是;,就只剩下自己配置的路径;情况2:最后用的;%path% ,保留之前的,并将自己添加的路径放在最前面。
永久性配置:二进制,八进制,十六进制之间的转换,转义字符与三种进制的关系JavaDoc注释:在类前和方法前加文档注释,其他地方不可以Dos命令下的生成文档注释:-d指明一下存储位置,在当前目录下生成doc文件夹,并将Demo2.java产生的帮助文档存进去生成帮助文档:javadoc -private -d doc -author -version Demo5.java-public 只能解析public的文档注释-protected 解析public,protected-package 解析public,protected,默认-private 解析public protected ,默认,私有@author 指定作者@version 指定版本信息@param 描述方法的参数@return 描述方法的返回值@throws 描述方法抛出的异常@see 生成参考及其他JavaDoc文档的链接在这个方法中,产生一个链接,去查看其它包下的方法强类型1、先声明2、初始化后才能使用3、同一作用域不能同名总空间,和开辟的空间区分开JVM虚拟机的程序的内存空间是从总空间中取出一块使用,其他的空间可能是其他程序的空间内存地址是十六进制内存地址取所存的数据别名:变量名变量:就是内存中的一个存储空间,用于存数据的,可以改变,只能存一个数在方法里面定义的变量是局部变量,必要先初始化,才能使用。
Javase复习笔记DayOI:I.文档注释可以在:类,常量,方法上声明,分别用来说明它们的功能及作用。
文档注释会被javadoc命令在读取当前源程序的时候解析并使其生产说明文档2.int length():获取当前字符串中字符个数(长度),无论中英文每个字符都算一个长度。
3.1nt in dexOf(Stri ng str):查找给定字符串在当前字符串中第一次出现的位置。
4.int indexOf( String str,int from):从当前字符串指定下标位置开始查找第一次出现给定字符串的位置。
5.1nt lastI ndexOf(Stri ng str):查找当前字符串中最后一次出现给定字符串的位置。
6.String subString(int start, int end):获取指定字符串中部分内容,含头不含尾。
7.Stri ng trim():去除当前字符串中两边的空白。
8.char charAt(i nt in dex):获取当前字符串中指定位置对应的字符9.boolean startsWith(String str) boolean endsWith(String str)判断当前字符串是否以给定的字符串开头,另一个是判断是否是以给定的字符串结尾的。
10.String toUpperCase() String toLowerCas():将当前字符串中的英文全部转换为大写或全小写。
II.Static Stri ng valueOf():字符串提供若干的静态方法valueOf()作用就是就将其他类型转换为字符串。
比较常用的是将基本类型转换为字符串。
Day02:1.boolea n matches(Stri ng regex):验证当前字符串是否满足给定的正则表达式的格式要求,需要注意正则表达式是否使用了“A”,“$”都是全匹配验证。
2.String [] split(String regex ):将当前字符串中满足正则表达式的部分“切掉”,保留剩余的部分。
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),所有变量都必须先定义后使⽤。
JavaSE知识点总结(个人整理).docJava SE知识点总结(个人整理)前言Java SE(Java Standard Edition)是Java平台的核心,提供了开发桌面和服务器端应用程序所需的基本功能。
本文将对Java SE的主要内容进行个人整理和总结。
Java基础1. Java语言概述1.1 Java语言的特点1.2 Java平台的发展历史2. 开发环境搭建2.1 JDK的安装与配置2.2 IDE的选择与使用(如IntelliJ IDEA、Eclipse)Java语法基础1. 数据类型1.1 基本数据类型1.2 引用数据类型2. 变量与常量2.1 变量的声明与作用域2.2 常量的定义3. 运算符3.1 算术运算符3.2 赋值运算符3.3 比较运算符3.4 逻辑运算符3.5 位运算符3.6 三元运算符4. 控制语句4.1 条件语句(if-else, switch-case)4.2 循环语句(for, while, do-while)4.3 跳转语句(break, continue, return)面向对象编程1. 类与对象1.1 类的定义1.2 对象的创建与使用2. 封装2.1 访问控制(public, protected, private)2.2 构造方法2.3 静态初始化块3. 继承3.1 继承的概念与实现3.2 方法重写(Override)4. 多态4.1 方法重载(Overloading)4.2 向上转型与向下转型5. 抽象类与接口5.1 抽象类的概念与使用5.2 接口的概念与实现6. 包与访问控制6.1 包的创建与使用6.2 包的访问控制集合框架1. 集合概述1.1 集合与数组的区别2. 常用集合类2.1 List接口(ArrayList, LinkedList)2.2 Set接口(HashSet, TreeSet)2.3 Map接口(HashMap, TreeMap)3. 集合的遍历3.1 使用迭代器遍历3.2 使用for-each循环遍历4. 集合的排序4.1 使用Comparable与Comparator接口异常处理1. 异常的概念1.1 检查型异常与非检查型异常2. 异常处理机制2.1 try-catch-finally语句2.2 throws关键字3. 自定义异常3.1 创建自定义异常类3.2 抛出与捕获自定义异常输入输出1. 流的概念1.1 输入流与输出流2. 字节流2.1 InputStream与OutputStream3. 字符流3.1 Reader与Writer4. 常用输入输出类4.1 File类4.2 Scanner类4.3 PrintWriter类多线程1. 线程的概念1.1 线程的生命周期2. 创建线程2.1 继承Thread类2.2 实现Runnable接口2.3 使用Callable与Future3. 线程同步3.1 synchronized关键字3.2 显式锁(Lock)4. 线程通信4.1 wait()与notify()方法4.2 阻塞队列(BlockingQueue)网络编程1. 网络基础1.1 IP地址与端口2. URL与URLConnection2.1 使用URL访问网络资源2.2 使用URLConnection处理网络请求3. Socket编程3.1 ServerSocket与Socket3.2 TCP与UDP通信Java 8新特性1. Lambda表达式1.1 Lambda表达式的语法1.2 Lambda表达式的应用场景2. Stream API2.1 Stream的概念与操作2.2 并行流与性能3. Date与Time API3.1 新的时间日期API3.2 使用LocalDate, LocalTime, LocalDateTime4. Optional类4.1 Optional类的概念4.2 使用Optional避免空指针异常结论总结Java SE的重要性,以及个人学习Java SE的心得体会。
JavaSE综合实训java 中的instanceof运算符是用来在运行时指出对象是否是特定类的一个实例。
instanceof 通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。
第1章Java概述1.1 java简介笔记:java体系由javaSE、javaEE、javaME三部分组成。
1.2 jdk工具笔记:与jdk相关的3个重要环境变量是JAVA_HOME、PATH、CLASSPATH。
1.3helloworld笔记:编译和运行java程序分别用到的命令是:javac、java。
1.4IDE集成开发环境笔记:使用开发环境前配置好jdk。
包名中的点目录路径相当于\。
创建项目建文件夹,文件夹的命名方式在同一个项目中不同的文件夹以存放的文件的种类命名,包名的命名方式分级不同文件夹的级别以点隔开前缀相同。
1.5输出与注释笔记:一行代码的注释用”\\“ 一段代码用/**/第2章Java语言概述2.1 字符笔记:三种常见的字符集ASSCII(二进制码)GB2312(中国)unicode(分三种UTF-8、UTF-16、UTF-32)。
2.2变量和常量笔记:标识符字母数字下划线或美元符,开头不能用数字;关键字又叫保留字不能用作变量或常量名;2.3数据类型笔记:byte,short,int,long从左到右可以自动转换。
位数低的可以自动转换高位。
高位到低位强制转换。
2.2操作符笔记:单目运算符a++先运算再自增++a先增后运算,关系运算符,返回类型为boolean 类型,双元运算符,三元运算符:表达式?b:c。
逻辑运算符与或非优先级不同非或与。
2.5流程控制笔记:分支语句if和switch case 语句break跳出循环,continue跳出此次循环继续执行后续循环。
2.6数组笔记:数组的定义必须固定长度,数组可以通过索引进行访问,通过循环对数组进行输入输出。
第3章面向对象基础3.1 面向对象的思想笔记:两个重要的概念1对象2类;面向对象的几个特征唯一性(每个对象唯一)、分类性(具备共同特征的划分为一类)、多态性(不同的表现行为)、继承性(子类继承父类)。
Day01 JDK的安装,MyEclipse的使用一、jdk的安装a)跟普通的软件安装过程一样。
jdk-6-windows-i586,默认的路径在C:\ProgramFiles\Java,可以改变。
b)在记事本下去编写java程序,所有的java文件的扩展名都是*.java,类的文件名称每个单词的首字母必须大写。
c)如何定义类:public class HelloWorld{}d)如果要在一个类中去体现效果出来,确切来说是要将java程序执行出来,那必须写上一个方法,主方法:public static void main(String[] args){}e)Java文件要显示效果出来,那必须经历2个过程,1,编译过程,需要使用javac命令。
2执行过程需要使用java命令。
f)当我们要去编译和执行java类的时候,需要使用javac和java命令。
假如现在在任何一个地方写一个java文件。
首先先找到java文件,进入某个盘符d:,要进去该文件的目录中cd D:\kende\宝Java EE\Oracle培训\Java_南医3\day01,现在已经进来了该文件中的目录中,那么还需要使用javac命令和java命令去编译和执行java程序。
g)Javac命令和java命令存在jdk中的bin目录中。
为了在任何一个地方写的java文件,都可以随意的使用javac命令和java命令。
那必须先将这2个命令所处在的路径配置在环境变量path中。
h)Path环境:C:\Program Files\Java\jdk1.6.0\bin,如果有多个路径,那么用;隔开。
i)编译java文件,javac HelloWorld.java,不区分大小写,当编译好了之后,会在当前目录下生成相对应的字节码文件*.classj)执行java文件,执行*.class文件,用java HelloWorld,这个时候区分大小写。
k)执行的过程是先将已经编译好的字节码文件*.class交给jvm去执行处理,但是jvm 首先应该先找到*.class的位置,然后要去调用jdk中的类库对象(lib目录),执行处理的时候,首先应该先将以上的2个路径配置好作为classpath的环境变量。
JavaSE⾃学阶段的笔记整理其他知识点1、String和Char的区别:(1)String是字符串类型,Char是字符类型;(2)Char要⽤单引号,String要⽤双引号;(3)String是⼀个类,具有⾯向对象的特性,可以调⽤⽅法2、Switch条件语句:- Switch(表达式){case 值:代码;break;...default:代码;break;}(1)Switch后⾯⼩括号的表达式的值必须是整型或者字符型;(2)case后⾯的值可以是常量数值,也可以是⼀个常量表达式;(3)case匹配后,执⾏匹配块的程序代码,如果没有遇到break则会继续执⾏下⼀个case块的内容,直到遇到break语句或者Switch语句块结束;3、while(判断条件){ 循环操作 },先判断,后执⾏4、do {循环操作}while(判断条件),先执⾏,后判断,⾄少执⾏⼀次5、当⼀个⽅法不需要返回数据时,返回类型(修饰符)必须是void;6、多重for循环:外层循环控制⾏,内层循环控制列;7、公共类(public 修饰的)⽂件名必须与类名保持⼀致(相同)8、showSaveDialog()和showOpenDialog()⽅法决定⽂件对话框类型(JFileChooser对象)9、⼀个Java⽂件中只能含有⼀个public类10、增强for循环:(⼀般⽤于遍历数组)for(循环变量类型变量名称:要遍历的对象){循环语句;}//遍历Collection对象//建⽴⼀个collectionString[] string = {"hello","how","are","you"};Collection list = java.util.Arrays.asList(string);//将数组转换为List对象//开始遍历for(String str:list){System.out.println(str);}//遍历数组int[] a = {1,5,3,7,6,0};for(int i:a){System.out.println(i);}11、for循环的死循环: for(;;){循环体;}。
1
public class Hello {
public static void main(String[] args) {
System.out.println("a");
}
}
得转盘符
转盘符
d:\>E:\
'E:\' 不是
或批处理文
d:\>e:
E:\>cd
E:\
2
Spring中的enume 如何配置(类中使用了enume配置了user的sex;)
ApplicationContent中如何配置sex这个属性
3
Virtual machine java虚拟机virtual 虚拟的
Enviromment 环境
Development 开发kit 包
4
Java的环境变量配置。
JA V A_HOME 配置的是D:\Java\jdk1.6.0_16
Path 里放置的是%JA V A_HOME%\bin;
目的是path中放置了很多路径。
以后jdk目录位置有可能变更。
设个变量javahome。
变量值为jdk目录
5
退格符
String str ="abc\ba";
System.out.println(str);
打印出来结果abc a 2者之间有个小”口”形状。
6
Short 加上 byte 得到的是int ?
byte b = 5;
short s = 3;
// short t1 =s+b; //错误
short t5 =(short)( s + b); //正确
7
10对应16近制a
11 b
12 c
13 d
14 e
15 f
8
如下代码块
String b = "d";
if(b =="a") //如果写成if(b=false)能编译通过吗?如果能,结果是?
System.out.println("a");
else if(b=="b")
System.out.println("b");
else if(b=="c")
System.out.println("c");
else
System.out.println("d");
顺序的进行判读
9
使用枚举。
变量类型是自己定义的枚举类型
变量名是switch的参数
枚举的值是case值
枚举类中像正常变量定义一样可有属性。
方法
10。