关于java中最最最基础的知识盲区

方法重载和方法重写的区别

a、方法重载(overload):如果满足以下三点要求,那么这个方法就重载了;和修饰符及方法的返回值无关
1、必须发生在同一个类中
2、方法的名称必须相同(注意字母的大小写,也必须一致)
3、参数列表不同(参数的个数、数据类型,顺序)
好处:降低了开发者学习成本,减少了命名空间。

b、方法重写(override):方法重写发生在子父类中,子类有一个和父类除了方法体以外,其他一模一样的方法,那么这个方法就重写了。
注意:如果父类的方法是私有的,则子类就不能重写该方法。
应用场景;子类继承的方法不足时,不适用时,可以重写。

String和StringBuilder、StringBuffer三者的区别

a、String:简单说String类中使用的final关键字字符数组保存字符串的,字符串一旦创建,内容是不可以修改的,所以可以共享使用。
好处:节约内存空间
坏处:产生大量的垃圾,降低运行效率。

b、StringBuilder:相当于一个字符串缓冲区,继承自AbstractStringBuilder,也是使用字符数组保存字符的,底层是一个默认容量为16的字符数组,但是没有final关键字修饰,所以是一个可变序列。

c、StringBuffer:它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

字符串的比较:==和equals的区别

a、==:作用是判断两个对象的地址值是否相等。即,判断两个对象是不是同一个对象。(基本数据类型= =比较的是值;引用数据类型= =比较的是内存地址)

b、equals:作用是判断两个对象是否相等,一般有两种情况:
1、类没有覆盖equals()方法,则比较的是两个对象。
2、类覆盖equals()方法,用判断内容是否相等,若相等返回true。

补充:equalsIgnoreCase:比较内容时,忽略大小写字母。

获取键盘输入的常用两种方法

a、通过Scanner

 Scanner scanner = new Scanner(System.in);

b、通过BufferedReader

BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));

自动装箱与自动拆箱

a、装箱:从基本数据类型转换为对应的包装类对象
b、拆箱:从包装类对象转换为对应的基本数据类型

扫描二维码关注公众号,回复: 11143204 查看本文章
Integer integer=4;//自动装箱
integer=integer+1;//自动拆箱
System.out.println(integer);//5

基本类型与字符串之间的转换

a、基本类型转换为String
方式一:直接在数字后面加一个空字符串

 //方式一:
int num = 100;
String a = num + "";
System.out.println(a);

方式二:通过String类静态方法valueOf()

//方式二:
String s = String.valueOf(num);
System.out.println(s);

b、String转换成基本类型
方式一:先将字符串数字转成Integer,再调用valueOf()方法。

//方式一:String—Integer—int
        String s = "100";
        Integer integer = Integer.valueOf(s);
        int i = integer.intValue();
        System.out.println(i);

方式二:通过Integer静态方法parseInt()进行转换。

 //方式二:
        String s = "100";
        int i = Integer.parseInt(s);
        System.out.println(i);

结语

一个在校大学生的日常笔记,如有错误请及时指出。
生活就像一盒巧克力,你永远不知道下一块是什么味道。

发布了34 篇原创文章 · 获赞 9 · 访问量 1290

猜你喜欢

转载自blog.csdn.net/weixin_43616750/article/details/104840907