![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
陈俊的博客
软中华硬玉溪,头发越短越牛逼
展开
-
java整数型常量池
首先看一段代码: Integer a=127; Integer b=127; System.out.println(a==b); Integer x=128; Integer y=128; System.out.println(x==y);输出结果是:truefalse问题来了127和128只差一个数为啥输出结果就是不一样呢?看一下Integer的源码那你就知道了首先在源码里面有一个叫IntegerCach原创 2021-01-22 21:26:45 · 516 阅读 · 0 评论 -
System.out.println()源码分析
首先来看一段代码: Object object=new Object(); object=null; System.out.println(object); System.out.println(object.toString());大家可以先自己想一下会输出什么?正确的输出就是下面所示:nullException in thread "main" java.lang.NullPointerException那么就来分析一下这句话原创 2021-01-22 18:45:00 · 469 阅读 · 1 评论 -
强制类型转换
先看看这道题:以下 b 的值是: byte b = (byte)129;答案是:-127解释:这题考察的就两个知识点:一、强制转换(主要涉及各个类型占几个字节,这里我只简单说一下byte型占一个字节,也就是8位,int型4个字节,32位);二、在计算机系统中,数值一律用补码来表示(存储)正数:补码=反码=原码(当然以二进制形式表达)129 int类型(4个字节)二进制: 00000000 00000000 00000000 10000001强制转换byte型后,只有一个字节即 1000000原创 2020-11-30 17:07:45 · 325 阅读 · 0 评论 -
成员变量和局部变量
注意:局部变量是没有初始值的,成员变量才有初始值原创 2020-11-30 15:37:06 · 74 阅读 · 0 评论 -
关于静态代码块,构造方法,构造代码块的执行先后顺序
总结一下:1.执行顺序:静态代码块>构造代码块>构造方法理由:静态代码块(static{})在类加载的时候执行一次。构造代码块({}内的部分)在每一次创建对象时执行,始终在构造方法前执行。构造方法在新建对象时调用( 就是new的时候 )。注意: a.静态代码块在类加载的时候就执行,所以它的优先级高于入口main()方法。b.当三种形式不止一次出现,同优先级是按照先后顺序执行。来看一道题巩固一下:public class B{ public static B t1 = n原创 2020-11-30 15:29:54 · 2671 阅读 · 0 评论 -
值传递和引用传递的问题
先看看下面这段代码的输出结果:public class Example{ String str=new String("tarena"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.print(ex.str+" and ");原创 2020-11-29 15:39:06 · 225 阅读 · 0 评论 -
关于抽象类和接口的默认访问权限
关于抽象类JDK 1.8以前,抽象类的方法默认访问权限为protectedJDK 1.8时,抽象类的方法默认访问权限变为default关于接口JDK 1.8以前,接口中的方法必须是public的JDK 1.8时,接口中的方法可以是public的,也可以是default的JDK 1.9时,接口中的方法可以是private的...原创 2020-11-29 15:11:51 · 1342 阅读 · 1 评论 -
“==“和“euqals()“的用法
先看看这个题你会不会做?==如果作用于基本数据类型的变量,则直接比较其存储的 “值”是否相等;如果作用于引用类型的变量,则比较的是所指向的对象的地址对于复合数据类型(类),使用equals()和“==”效果是一样的,两者比较的都是对象在内存中的存放地址(确切的说,是堆内存地址)。equals注意:equals方法不能作用于基本数据类型的变量如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址;诸如String、Date等类对equals方法进行了重写的话,比较的是所原创 2020-11-28 23:59:20 · 212 阅读 · 0 评论