方法覆盖的定义

本文介绍了Java编程中的一些核心概念,包括方法覆盖、线程安全、数据结构、字符串操作、并发控制、类与接口的区别、集合框架以及网络通信协议等。强调了线程安全在多线程编程中的重要性,探讨了ArrayList与LinkedList的性能差异,以及TCP与UDP的区别。此外,还讨论了Spring Bean的线程安全性、缓存机制以及synchronized和volatile的关键区别。
摘要由CSDN通过智能技术生成

1,方法覆盖是说子类重新定义父类的方法。方法覆盖必须有相同的方法名,参数列表和返回值类型。

2,servlet在多线程下其本身并不是线程安全的。如果在类中定义成员变量,而在service中,根据不同的线程对该成员变量进行更改,那么在并发的时候就会引起错误。
最好的方法是定义在局部变量中,由于方法中的局部变量是在栈中,彼此拥有独立的空间,不会互相干扰,因此才线程安全。

3,ServerSocket(int port);

4,实例代码块在执行构造方法之前执行。所以优先级高于构造方法。

5,类中声明的变量有默认初始值;方法中声明的变量没有默认初始值,必须在定义的时候初始化,否则在访问该变量的时候会出错。

6,局部变量,没有像成员变量那样加载的时候会有初始化赋值,所以要使用局部变量时,一定要显示的给它赋值,也就是定义的时候给它赋值

7,\D表示非数字(大写表示非)

8,java调试器jdb.exe

9, final修饰变量的时候会把它变成常量(不会改变的值)

10,equals默认比较的是地址,因为最初这个方法是定义在object上的,也就是比较地址的。

11,String是final类型,每次声明的都是不可改变的对象。所以每次操作都会产生新的String对象,然后将指针指向新的String对象。
StringBuffer,StringBuilder都是在原有的对象进行操作,所以如果需要经常改变字符串的内容,则采用这两者。
StringBuffer是线程安全的,StringBuilder是线程不安全的,StringBuilder性能更高,所以优先使用StringBuilder
但是在实际开发的过程中,安全方面也是很重要的,为什么要优先使用StringBuilder?多个线程访问同一个资源,才会造成安全问题,如果在每一线程都创建一个StringBuilder对象,那么就不会有多个线程访问一个资源。

12,抽象类:方法可以是抽象的,也可以是非抽象的,有构造方法
接口:方法都是抽象的,属性都是常量,默认使用public static final修饰
jdk1.8之后:接口里面可以有实现的方法,注意要在方法的声明上加上default或者static

13,Integer a = 10;
int b = 10;
system.out.println(a == b); tru

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值