Java基础知识1

包装类型

所有整型包装类对象之间值的比较,全部使用equals方法比较,-128到127之间的可以使用“==”进行比较,包装类型大多数采用缓存机制提升性能

拆箱:将基本类型用它们对应的引用类型包装起来,如Integer i = 10,等价于Integer i = Integer.valueOf(10);

装箱:将包装类型转换为基本数据类型,例如

Integer i = 10,int n = 10,其等价于int n = i.intValue()

包装类型与基本类型区别:

1、包装类型可用于泛型,但基本类型不能,且在如方法参数、对象属性这些地方很少用到基本类型;

2、包装类型存放在栈中(由于其为对象类型),基本数据类型一般存放在局部变量表或JVM的堆中;

3、基本类型占的空间比包装类型少;

4、成员变量包装类型不赋值就是null ,而基本类型有默认值且不是null;

5、包装类型使用"=="进行比较时比较的是变量的地址是否相同,要比较值是否相同需"equals()"方法,基本类型可使用"=="进行值的比较。

变量

成员变量与局部变量的区别

1、成员变量属于类,局部变量属于方法或代码块;

2、成员变量可被public、private、static等修饰,局部变量不能被访问控制符或static修饰,但这两者均可被final修饰;

3、成员变量存放在堆内存中,局部变量存放在栈内存中;

4、成员变量随着对象的创建而存在,而局部变量随着方法的调用而自动生成,随着方法的调用结束而消亡;

5、若未对变量赋值,成员变量会自动被对应类型的赋默认值,但局部变量不会。

静态变量

静态变量可被类的所有实例共享,无论一个类创建了多少个对象,它们都共享同一份静态变量,多个对象被创建时只会被分配一次内存,其使用"类名.变量名"的方法访问(private修饰时无法访问),通常情况下,静态变量会被final关键字修饰成为常量。

静态方法与实例方法的区别

1、调用方法上,静态方法可使用类名.方法名或对象.方法名调用,且不需要通过new方法新建对象,直接调用即可。

2、静态方法在访问本类的成员时,只允许访问静态成员,不允许访问实例成员,而实例方法不存在这个限制。

重载与重写

重载

发生在同一个类或父类与子类之间,方法名相同,但参数类型、顺序、数量可不同,方法返回值和访问修饰符也可以不同。

重写

发生在运行期,是子类对父类的允许访问的方法的实现过程进行重新编写,若父类的方法由private/final/static修饰,则这些方法不能被重写,同时构造方法不能被重写,所传入的参数列表要和父类一致。

重写与重载对比

在执行重写时,若方法的返回类型是 void 和基本数据类型,则返回值重写时不可修改;若方法的返回值是引用类型,重写时是可以返回该引用类型的子类的。

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值