Java基础笔记

本文介绍了Java中的final关键字使用、基本数据类型、字节码概念、内存泄漏等问题,并探讨了并发与并行的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、final 可以修饰属性,方法,类。修饰方法表示该方法不可被覆盖(重写)

2、final 修饰属性时,指的是引用不可变,Java初始化顺序:先静态,父类优于子类先初始化,成员变量优于方法先初始化。子类初始化时,默认优先调用父类构造方法

3、基本数据类型:byte(1) boolean(1)short(2)char(2)int(4)float(4)long(8)double(8)

4、finalize 方法:属于object类的方法。在垃圾收集器执行的时候会调用对象的finalize()方法,然后在下一个回收动作才真正回收对象所占内存。链接http://blog.youkuaiyun.com/shanghui815/article/details/6787855

5、中文字符占2个字节,英文1字节。

6、字节码:字节码是一种中间状态(中间码)的二进制代码(文件)。需要直译器转译后才能成为机器码。Java源代码编译后产生字节码,再由jvm解释和运行。

7、静态方法属于类,不属于实例。静态方法(类的方法),非静态方法(实例的方法)

8、Java对于8个基本类型,是采用类似于值传递,不会改变实际参数的值。而对于其他类,则是引用传递,可以改变实际参数的值,不能改变实际参数的参考地址。如demo(StringBuffer str , int  n)

9、静态方法中不能出现this关键字。在类方法中可以用this调用本类方法(错)

10、原生类就是8中基本数据类型

11、

  1. 位(bit)
    来自英文bit,音译为“比特”,表示二进制位。位是计算机内部数据储存的最小单位,11010100是一个8位二进制数。一个二进制位只可以表示0和1两种状态;两个二进制位可以表示00、01、10、11四种状态;三位二进制数可表示八种状态……。

  2. 字节(Byte)
    字节来自英文Byte,音译为“拜特”,1字节=8位。

  3. Unicode用两个字节(2Byte)表示一个中文,即用16个位表示一个中文(16bit)
  4. 原码,反码,补码:正数的补码就是原码。负数的补码是取反在加1。这样的好处是:1.  0的表示不管是原码还是补码都是00000000
  5.   2.补码相加就是两个数的和或差。

 12、short(2Byte=16bit)的表示范围是:(-2^15~2^15-1)。byte的表示范围是 -128~127.(-2^7~2^7-1).因为计算机是用补码表示数字,最后一位是1表示负数。-128二进制表示是10000000,补码(取反再加一)也是10000000 。而127二进制是 01111111。

13、内存泄漏:指你向系统申请分配内存进行使用(new),可是使用完了以后却不归还(delete),结果你申请到的那块内存你自己也不能再访问(也许你把它的地址给弄丢了),而系统也不能再次将它分配给需要的程序。

14、并行和并发的区别:

你吃饭吃到一半,电话来了,你一直到吃完了以后才去接,这就说明你不支持并发也不支持并行。
你吃饭吃到一半,电话来了,你停了下来接了电话,接完后继续吃饭,这说明你支持并发。
你吃饭吃到一半,电话来了,你一边打电话一边吃饭,这说明你支持并行。

并发的关键是你有处理多个任务的能力,不一定要同时。
并行的关键是你有同时处理多个任务的能力。

所以我认为它们最关键的点就是:是否是『同时』。

15、构造块:比构造方法先执行,new 时执行。静态块:类加载时执行,只执行一次,new 时不执行。

 private static t=new 类;  可以把它当成一个静态块






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值