
Java基础
一共196篇文章
专题:第1期
-
什么是包装类型,以及其作用
参考答案 包装类的定义: 能够直接将简单类型的变量表示为一个类,在执行变量类型的相互转换时,会大量使用包装类。 包装类的作用: 1. 集合不允许存放基本数据类型,故常用包装类; 2.包含了每种基本类型的相关属性,如最大值,最小值,所占位数等; 3.作为基本数据类型对应的类类型,提供了一系列实用的对象操作,例如类型转换、进制转换等。 以上,是Java面试题【什么是包装类型,以及其作用】的参考答案。 …... 宝妹儿- 35
- 0
-
数组有没有length方法,String呢
参考答案 数组没有length()这个方法,有length这个属性,可以计算数组的长度。 String有length()这个方法,用来计算字符串的长度。 以上,是Java面试题【数组有没有length方法? String呢】的参考答案。 输出,是最好的学习方法。 欢迎在评论区留下你的问题、笔记或知识点补充~ ---end---... 宝妹儿- 24
- 0
-
私有方法能被重载或者重写吗
参考答案 私有方法能重载,但是不能重写。 1. 重载 是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。例如: public class Dog { private void bark(){//bark()方法是重载方法 } private void bark(int a){//bark()方法是重载方法 } } 2. 重写 类与子类之间的多态性,对父类的函数进行重新定义…... 宝妹儿- 185
- 0
-
byte取值范围为什么是-128~127
参考答案 计算机规定了0000 0000 代表0,1000 0000代表的-0没有意义,必须找个~127~127之外的数和它对应,人为规定-0就是-128,这么做完美适合计算机做减法运算。 byte 占用一个字节, 8 位,对于计算机来说表数范围为 0000 0000 ~ 1111 1111; 最高位表示符号位; 计算机用补码表数; 正数和 0 的补码 = 源码; 负数的补码 = 其对应正数按位取…... 宝妹儿- 14
- 0
-
成员变量命名为什么不建议用isXXX
参考答案 2020.04.22发布的《阿里开发规范泰山版》编程规约,关于命名风格的第8条规定: 【强制】POJO 类中的任何布尔类型的变量,都不要加 is 前缀,否则部分框架解析会引起序列化错误。 使用快捷键进行生成getset方法时,它会把“is”给吃掉,问题就出在private boolean isAtAll;这个字段上,使用fastjson序列化之后,该属性实际转化为了:“atAll”: t…... 宝妹儿- 15
- 0
-
为什么重写equals,就要重写hashCode
参考答案 本篇深入解析:为什么重写equals,就要重写hashCode? 1. equals方法 Object类中默认的实现方式是:return this ==obj ,即:只有this和obj引用同一个对象,才会返回true。 但是,实际上我们需要用equals来判断 2个对象是否等价,而非验证他们的唯一性,在实现自己的类时,就要重写equals。 按照约定,equals需要满足以下规则。 自…... 宝妹儿- 100
- 0
-
写一个Lambda表达式的使用示例
参考答案 使用示例:使用lambda表达式和函数式接口Predicate Java 8添加了一个包 java.util.function,它包含了很多类,用来支持Java的函数式编程。Predicate是其中的一个包,使用 java.util.function.Predicate 函数式接口以及lambda表达式,可以向API方法添加逻辑,用更少的代码支持更多的动态行为。 下面是Java 8 Pr…... 宝妹儿- 19
- 0
-
字符串分割有哪些方式
参考答案 字符串分割的三种方式: 1. 使用split()方法 用split()方法实现最方便,但是效率比较低。 2. 使用StringTokenizer类分割字符串 StringTokenizer类的效率很高,它是JDK中提供的专门用来处理字符串分割子串的工具类。 StringTokenizer类构造函数: public StringTokenizer(String str,String del…... 宝妹儿- 81
- 0
-
字符串拼接+和concat的区别
参考答案 字符串拼接+和concat的区别: +可以是字符串或者数字及其他基本类型数据,而concat只能接收字符串; +左右可以为null,concat为会空指针; 拼接空字符串,concat略快一些,两者在速度方面可忽略不计); 如果拼接更多字符串,建议使用StringBuilder。从字节码来看,+号编译后就是使用了StringBuiler来拼接,所以一行+++的语句,就会创建一个Strin…... 宝妹儿- 13
- 0
-
静态内部类和普通内部类的区别是什么
参考答案 一、静态内部类和普通内部类的区别 1. 普通内部类 创建其对象时依赖于外部类的对象; 可访问外部类的全部资源。 2. 静态内部类 创建其对象时不依赖于外部类的对象; 只能访问外部类的静态资源(和静态方法差不多)。 二、实例 public class Demo { public static void main(String[] args) { //获取外部类类对象及其成员变量 Outte…... 宝妹儿- 24
- 0