【别光顾着收藏呀⭐据说点赞的都会收获好运欧👍☀️】
【私藏多年的绝版资料,现在免费送给你,随时会被删除,千万保存下来!有道云笔记】
第2章:JAVA的基本知识
1、Java常用关键字(重点)
不常见(不要求):transient(修饰变量,使变量不被序列化),native(修饰方法,表示该方法是由本地语言(如C、C++)实现的)
较不常见:instanceof(用于判断一个对象是否为某个类的实例),package(用于定义类的包名),volatile(修饰变量,使多线程操作时从内存读取变量值,而不从线程本地缓存读取)
常见:implements(类继承某个接口用implements修饰),abstract(用来修饰类和方法,表明是抽象类或抽象方法),interface(用来定义接口)
2、数据类型分类及区别
3、&& ||等逻辑运算符
注意&&和||的短路问题,如果&&左边为假则不会计算右边的表达式
4、基本数据类型之间的类型转换规则(重点)
当低级别的变量赋值给高级别的变量时,系统自动完成数据类型转换。
如int型赋值给long会被隐式转化为long。如char赋值给int会转化为整形数字。
注意下面需要强制类型转换的情况(高赋低,平级):
5、一维及多维数组的声明、创建、初始化
静态初始化:直接赋值。动态初始化:用new开辟空间。
注意下面这点:
定义二维数组要给出第一维的大小:
动态初始化方法(用new)
6、Java标识符规则
7、IF else While for等控制语句
【前排广告:期末不挂科,轻松拿高分。如果需要课后题答案(新思想、毛中特、近纲、马原、思法)及备考题库的小伙伴们可以看下面这篇博客⭐全网最全的整理(ps:2023/6/12以后因教材版本更新,课后题答案及题库全部重新修订,导致成本上升,暂时属于付费资源,希望小伙伴们多多订阅支持☀️谢谢大家!):新思想+毛中特+近纲+马原+思法课后题答案全网最全整理】
第3章:面向对象
先说类,类的定义如下:
类的命名规范简单了解即可:
定义类中成员,第2、3点要理解:
重点学习构造方法,这对以后写代码很重要。
重点理解第1、2、5点:
理解下面这句话(没new分配空间前都是引用类型,因为不指向实际内存空间):
1、继承
子类继承父类在同一包和不同包的情况(了解即可):
protected简单了解:
子类对象构造过程是常考考点:
2、封装
3、多态/动态绑定
4、抽象类(重点)
抽象类定义:
抽象操作是只定义接口,不实现该接口,具体的功能实现由子类完成:
下面这页内容要重点掌握,非常爱考:
注意:抽象类不能用new运算符创建对象,只能用其子类创建对象,子类必须继承抽象类,也必须重写抽象类的内容。
5、接口
接口相当于是定义了方法,然后其它类继承接口,提供具体的实现。
6、super
7、this
8、final
9、枚举
10、方法重载
11、异常处理
12、访问权限
【据说点个赞Java会收获好成绩欧👍】
第4章:范型与容器类:
如果你正在迭代一个集合,而集合中的对象被修改了(例如,它的某个属性被改变了),那么当你在迭代过程中访问那个对象时,你会看到最新的状态,也就是说,输出的值会改变。
1、范型类与范型方法
2、列表接口List
千万要注意:LinkedList和ArrayList都是List的实现方式,都是【有序】的线性表,千万要注意是有序的,而且元素是可以重复的,甚至可以为空。
List<String> list = new ArrayList<String>();
list.add(元素) 添加元素 list.size()获得列表的大小
LinkedList<String> links = new LinkedList<String>(Arrays)
3、集合接口Set
HashSet中元素的排列并不是按照元素的添加顺序,也不是元素的自然顺序,而是基于元素的hashCode值。TreeSet会对元素进行排序。
values是Collection<String>类型
Set<String> set = new HashSet<String>(values);
4、映射接口Map
5、Object
6、String
7、StringBuffer
8、简单正则表达式
——\d 表示数字,[0-9]
——[ ] 中括号表示只有括号里的字符才能参与匹配
——\w 表示数字、大小写字母,下划线:即[0-9A-Z_a-z] 【如:"\\wank"可以指代_ank等
如:"\\w*ank"可以在ank前面加入任意多个字符,如:frank,areank】
——\s 表示[\t\n\r\f] //如:“\\s*ank”可以在ank前面加入任意多个空格【其中:\r是回车 \f是换页符 \t是制表符 \n是换行符】
—— *表示0次或多次 //如ta*nk,表示a可以出现0次或多次,taaaank可以,tnk可以
—— +表示1次或多次 //如ta+nk,表示a可以出现1次或多次,taaaank可以,tnk不可以
—— ?表示0次或1次
——{n}表示刚好出现n次 //如"ta{3}+nk",当a出现3次时可以,如taaank
——{n,m}表示出现n到m次 //如"ta{3,5}+nk",当a出现3次时可以,如taaaank
——^表示否,用在方括号内,表示不想匹配的字符。【如:[^x]表示第一个字符不能是x,如:"[^tf]ank"表示第1个字符不能是t或f,tank不行,fank不行,wank可以】
——[a-z]字符范围
—— 英文.符号表示,匹配单个任意字符 //如t.o表示匹配注入teo,too的字符
—— |竖线表示或
——$匹配输入字符串的结束位置
——\\是转义字符
all = all.replaceAll("\\.", " ");
all = all.replaceAll("\\_", " ");
all = all.replaceAll("\\-", " ");
all = all.replaceAll("\\,", " ");
all = all.replaceAll("\\/", " ");
all = all.replaceAll("\\(", " ");
all = all.replaceAll("\\)", " ");
——"1[38]\\d{9}"; //表示以13或18开头【方括号表示只有方括号里的指定字符才能参与匹配,且只能匹配单个字符 // \d表示[0~9],\d{9}表示有9位0~9的数,加上前面2位,共计11位】
第5章:图形用户界面
GridPane:网格化布局
StackPane:层次结构布局。
TitlePane是一个可以关闭打开的有标题的Pane
HBox水平布局。VBox垂直布局。
Pane固定位置布局。
FlowPane:流式布局。
BorderPane:顶部、底部、上侧、下侧、左侧、右侧、中心布局。
第6章:IO流和JDBC
第7章:线程
考点:熟悉线程的生命周期,能写多线程的程序,能写程序实现线程同步程序,能写生产者消费者程序,Runnable,Thread,线程池。
1、Thread子类run()方法的重写
2、使用Runnable接口
第8章:网络编程
1、套接字Socket:
java.net包中定义了Socket和ServerSocket两个类,分别用来实现双向连接client和server端。
2、UDP数据报:
将数据打包成数据报:DatagramPacket类
发送和接收数据报:DatagramSocket类
3、广播数据包:
第9章:Lambda表达式:
1、Lambda表达式用在何处?
答:Lambda表达式是Java中表达匿名函数的方法,可以使得编程中的代码更简洁。(可以将Lambda表达式理解为一种没有函数名的函数)
2、Lambda表达式的写法?
(参数列表) -> {语句;}
参数列表:它定义了函数的输入参数。这些参数的数量和类型可以根据需要定义,如果没有参数,可以写成()。
箭头符号:->是Lambda表达式的核心,它将参数列表和函数体分隔开。
函数体:它定义了Lambda表达式要执行的操作。函数体可以是一个表达式,也可以是一组语句。
3、写最基本的Lambda表达式:
样卷:
1、A 2、A 3、B 4、D 5、D 6、A 7、D
8、D 9、D 10、B
1、x 2、x 3、x 4、x 5、x 6、x 7、x 8、y 9、y 10、x
1、接口只有常量或方法的定义,而没有具体的实现,而类不仅有定义也有具体的实现。
2、
3、try catch
4、
5、GridPane网格布局,将子节点按网格形式防止
BorderPane边界布局,将子节点放置在上、下、左、右和中间五个区域。
HBox水平布局,将子节点按水平方向依次排列
1、继承、多态、封装
2、
3、DatagramSocket
4、super
5、import
6、const
7、
8、7
9、Thread Runnable
10、CBA 11、1258
13、
static public ArrayList<String> removeDuplicate(ArrayList<String> collection) { Set<String> b = new TreeSet<>(); for (String m : collection) { b.add(m); } ArrayList<String> l = new ArrayList<>(); for(String m : b) { l.add(m); } return l; }
12、
public static void main(String args[]) { System.out.println(f(1.1,2.5)); System.out.println(f(9.9,9.9)); System.out.println(f(7.8,3.9)); } public static <T extends Comparable<T>> int f(T a,T b) { return a.compareTo(b); }