Java基础语法注意事项

简介: Java基础语法注意事项

1.abstract 和 static 不能连用

因为static修饰的方法是静态方法,其可以直接被类所调用。


而abstract修饰的方法为抽象方法,即无方法体的方法,不能够被直接调用,需要在子类或实现类中去编写完整的方法处理逻辑后才能使用。


2.abstract和final不能连用

abstract和final不能同时使用,因为abstract的作用是定义抽象方法让子类继承重写的,而final修饰的方法是可以被子类继承,但是不能重写。


final修饰的类不能被子类继承


*  全局成员变量可以直接被static、final同时修饰。


3.类、对象、实例的关系

类是对象的抽象,对象是类的具体化,实例是对象的另一种名称。


4.判断字符串是否相等使用equals方法


5.java变量的初始化之后的默认值

1、整数类型(byte、short、int、long)的基本类型变量的默认值为0。

2、单精度浮点型(float)的基本类型变量的默认值为0.0f。

3、双精度浮点型(double)的基本类型变量的默认值为0.0d。

4、字符型(char)的基本类型变量的默认为 “/u0000”。

5、布尔型的基本类型变量的默认值为 false。

6、引用类型的变量是默认值为 null。

7、数组引用类型的变量的默认值为 null。


6.重写与重载的区别

重写是子类重新编写,或覆盖父类继承下来的方法,也叫方法覆盖,主要用于当父类提供的方法无法满足子类需求时,可在子类中定义和父类相同的方法进行重写。


重写的原则:


  • 重写必须存在于继承关系中。
  • 所重写的方法名称、参数列表要与父类相同。(重载只是方法名称与父类相同,形参列表与父类不同)
  • 所重写的方法访问修饰符权限,需要比父类的更宽泛或与之相同。(public>protected>default>private)
  • 所重写的方法返回值类型,需与父类的返回值类型相同或是其子类。

重载指的是,在同一个类中有若干个方法,它们方法名称相同,但参数列表不相同,这种情况叫作方法的重载。


重载的原则:方法名称相同,参数列表不同(包括参数的个数,顺序,类型各不相同)

方法的重载与方法的访问修饰符与返回值类型无关。目的是对构造器进行功能扩展,以应对多业务场景的不同使用需求。


区别:1.方法的重载与方法的访问修饰符与返回值类型无关;重写的方法访问修饰符权限,需要比父类的更宽泛或与之相同,所重写的方法返回值类型,需与父类的返回值类型相同或是其子类。


7.JDK JRE JVM三者的作用及三者关系


关系:JDK包含JRE,而JRE包含JVM

总结:JDK用于java程序的开发,JRE只能运行class而没有编译的功能。


JVM,即java虚拟机,是java运行时的环境


8.this与super关键字作用

*this

1.this出现在实例方法中其实代表的是当前对象。

2.this不能使用在静态方法中。因为静态方法是类级别的方法。

this代表当前对象,静态方法中不存在当前对象。

3.this. 大部分情况下可以省略,但是用来区分局部变量和实例变量的时候不能省略。


*super

它指向了当前对象自己的父类型特征(也就是继承的父类的所有的东西)

在子类对象中,子类想访问父类的东西,可以使用“super.”的方式访问


9.自动装箱和自动拆箱

Integer a2 = Integer.valueOf(12);
System.out.println(a2);

//自动装箱:可以自动把基本类型的数据转换成对象
Integer a3=12;

//自动拆箱:可以自动把包装类型的对象转换成对应的基本数据类型
int a4=a3;
目录
相关文章
|
2天前
|
Java Apache Maven
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
15 6
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
|
16天前
|
Java
java基础(4)public class 和class的区别及注意事项
本文讲解了Java中`public class`与`class`的区别和注意事项。一个Java源文件中只能有一个`public class`,并且`public class`的类名必须与文件名相同。此外,可以有多个非`public`类。每个类都可以包含一个`main`方法,作为程序的入口点。文章还强调了编译Java文件生成`.class`文件的过程,以及如何使用`java`命令运行编译后的类。
18 3
java基础(4)public class 和class的区别及注意事项
|
2天前
|
JSON Java 开发工具
Java服务端集成Google FCM推送的注意事项和实际经验
公司的app要上海外,涉及到推送功能,经过综合考虑,选择Google FCM进行消息推送。 查看一些集成博客和官方文档,看的似懂非懂,迷迷惑惑。本篇文章除了将我实际集成的经验分享出来,也会对看到的博客及其中产生的疑惑、注意事项一一评论。 从官方文档和众多博客中,你会发现Java集成FCM推送有多种实现方式,会让生产生文档很乱,不知作何选择的困惑。
14 0
|
16天前
|
Java 数据安全/隐私保护
java之基本语法
java之基本语法
20 6
|
1月前
|
存储 Java 容器
Java 基础语法
Java是一种面向对象的编程语言,其基础语法包括类和对象、方法、变量、控制流语句、继承和多态以及异常处理。代码需写在类中,`main()`方法是程序入口,变量用于存储数据,控制流语句控制程序执行流程,继承和多态增强代码灵活性,异常处理保证程序稳定性。掌握这些知识可帮助您编写简单的Java程序。
|
2月前
|
缓存 前端开发 Java
【前端学java】java基础巩固复习巩固语法练习-工具类的封装(14)
【8月更文挑战第10天】java基础巩固,工具类的封装
21 1
【前端学java】java基础巩固复习巩固语法练习-工具类的封装(14)
|
2月前
|
存储 前端开发 JavaScript
【前端学JAVA】有手就会!10min快速入门java的基础语法(2)
【8月更文挑战第8天】10min快速入门java的基础语法
33 2
【前端学JAVA】有手就会!10min快速入门java的基础语法(2)
|
1月前
|
安全 前端开发 Java
浅析JVM invokedynamic指令与Java Lambda语法的深度融合
在Java的演进历程中,Lambda表达式无疑是Java 8引入的一项革命性特性,它极大地简化了函数式编程在Java中的应用,使得代码更加简洁、易于阅读和维护。而这一切的背后,JVM的invokedynamic指令功不可没。本文将深入探讨invokedynamic指令的工作原理及其与Java Lambda语法的紧密联系,带您领略这一技术背后的奥秘。
20 1
|
2月前
|
小程序 Java
【aspose-words】Aspose.Words for Java模板语法详细剖析
本文通过详细分析Aspose.Words for Java模板语法,介绍了使用条件块、变量和动态合并表格单元格三个常用模板标签,并结合实际案例进行演示。通过这三个标签的实操,帮助读者更好地掌握Aspose.Words的使用技巧。此外,还提供了官方文档链接以便进一步学习。
98 0
【aspose-words】Aspose.Words for Java模板语法详细剖析
|
2月前
|
安全 Java 编译器
Java 基础语法-面试题(53道)(基础概念+基础语法+流程控制)
Java 基础语法-面试题(53道)(基础概念+基础语法+流程控制)
51 18