2020-12-01

本文详细阐述了JAVA类的初始化顺序,包括静态和实例部分,并讨论了继承中的覆盖和重载概念。此外,还提到了JAVA集合、接口、线程管理、文件操作、预编译语句、网络通信(TCP/UDP套接字)以及JDBC数据库连接等方面的基本知识。
摘要由CSDN通过智能技术生成

JAVA复习

++++初始化一个类的执行顺序:
如果类还没有被加载:
1、先执行父类的静态代码块和静态变量初始化,并且静态代码块和静态变量的执行顺序只跟代码中出现的顺序有关。
2、执行子类的静态代码块和静态变量初始化。
3、执行父类的实例变量初始化(例如:int a;初始化就是0,引用类型就是null)
4、执行父类的构造函数
5、执行子类的实例变量初始化(例如:int a;初始化就是0,引用类型就是null)
6、执行子类的构造函数

++++char是java的关键字,表示是字符串类型

++++JAVA 字节码文件扩展名 --> .class

++++Set是一种不包含复元素的Collection,List允许有相同的元素

++++同一个 Java 源文件中,最多包含一个用 public 修饰的类

++++在 Java 语言中,数字值不能自动转换为布尔类型

++++接口中不能含有静态代码块以及静态方法

++++覆盖是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!当需要在子类中调用父类的被重写方法时,要使用 super 关键字。重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。
阿松大大

++++ package 语句必须放在程序的第一句

++++子类中调用方法时会现在本类中寻找,然后再去寻找父类,所以super可以访问父类已被覆盖的方法。但其它的public方法可以直接用。另:super调取父类的构造方法

++++Thread.stop本质上是不安全的。停止线程会导致它解锁所有已锁定的监视器。

++++Map集合本身没有iterator方法,–>set keySet() -->set有iterator方法

++++Java File类(java.io.*)可表示一个文件,也有可能是一个目录(在JAVA中文件和目录都属于这个类中,而且区分不是非常的明显)go–>

++++ PreparedStatement 接口是 Statement 的子接口

++++Comparable是在集合内部定义的方法实现的排序,位于java.lang下。Comparator是在集合外部实现的排序,位于java.util下。go–>

++++ Java 语言提供处理不同类型流的类所在的包是 java.io 包

++++静态方法不能被覆盖

++++一些常用的泛型类型变量:
E:元素(Element),多用于java集合框架
K:关键字(Key)
N:数字(Number)
T:类型(Type)
V:值(Value)
go–>

++++java程序中,使用TCP套接字编写服务端程序的套接字类是:ServerSocket

++++标签和文本框等组件都可以直接添加到 JFrame 或 JPanel 中

++++使用 UDP 套接字通信时,receive()方法用于接收数据

++++1)为什么wait()必须在同步(Synchronized)方法/代码块中调用?
答:调用wait()就是释放锁,释放锁的前提是必须要先获得锁,先获得锁才能释放锁。
(2)为什么notify(),notifyAll()必须在同步(Synchronized)方法/代码块中调用?
答:notify(),notifyAll()是将锁交给含有wait()方法的线程,让其继续执行下去,如果自身没有锁,怎么叫把锁交给其他线程呢;(本质是让处于入口队列的线程竞争锁)

++++使用 JDBC 时,MySQL 的连接串为" jdbc:mysql://端口号:主机/数据库名

++++

++++

++++

++++

++++

++++

++++

++++

++++

++++

++++

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值