了解Java语法体系 -(适合初学者了解)

news/2024/11/16 18:58:06/

文章目录

  • 前言
  • 1. Java工具的安装
  • 2. Java数据类型认识
    • 2.1 基本类型与引用类型
    • 2.2 变量:
    • 2.3 数组:
  • 3. 方法
  • 4. 类和对象
  • 5. 继承多态
  • 6. 抽象接口
  • 7. 字符串类的使用
  • 总结

✨✨✨学习的道路很枯燥,希望我们能并肩走下来!


前言

本篇通过对Java语法体系的总结认识,对与初学者可以让他们有大概的认识,从而进一步学习Java如有错误,请在评论区指正,让我们一起交流,共同进步!


1. Java工具的安装

安装Idea,JDK的安装
命令框实现第一个java程序:javac,java,javap -c

2. Java数据类型认识

数据类型:

2.1 基本类型与引用类型

基本类型:
byte, char, short, int, long, float, double, boolean
字节: 1,2,2,4,8,8,8,不确定
包装类:Character - 字符型,Integer - 整形
其他类型包装类:首字母大写(例如:Byte)

引用类型(类类型):数组,类,抽象类,接口,自定义类等

2.2 变量:

变量:
局部变量(必须初始化),类变量(自己带有默认值),全局变量

运算符(与C语言类似):无符号逻辑右移(>>>), 没有无符号逻辑左移;

条件逻辑:if…else, while, do…while;条件必须是布尔类型
不能作为switch条件类型的有哪些:boolean,long,float,double;

2.3 数组:

数组遍历:for, for-each, Arrays.toString();
数组作为参数:
array = new array[3]; => 改变数组指向
array = array[2]; => 改变数组中的值
数组的工具类:Arrays (排序,打印等)

3. 方法

涉及重载和重写的区别? - 思考

重载:方法名相同,参数列表,参数个数 / 顺序 其中一个不一样(参数返回类型可以不一样);
重载不一定在一个类中,继承的类也可以实现重载;
重写:参数返回类型,方法名,参数列表,参数个数 / 顺序都一样
返回值可以不一样:必须是协变类型(父子类关系);

什么情况下不能重写:被final,static,private; (子类重写方法后访问权限需要大于父类)

4. 类和对象

类:变量和方法
成员变量():
普通成员变量,存在在对象当中;
静态成员变量(属于类变量),存在方法区中,且只有一份;

成员方法:
普通成员方法,存在对象当中;
静态成员方法,不依赖于对象;(静态方法中不能使用非静态成员)

成员变量初始化:
直接初始化,定义变量时直接初始化;
默认初始化,类变量默认初始化值
构造方法初始化,调用对象的时候就会初始化成员变量;
构造方法,没有返回值,可以重载;没有构造方法,默认无参构造,有构造方法,不会主动提供构造方法;

封装:
对类的成员进行隐藏,不让类外的东西进行访问;
使用private封装,提供get,set方法进行访问;

代码块执行顺序:
静态代码块,非静态代码块,构造代码块;
静态代码块只执行一次;

内部类:静态内部类,非静态内部类,匿名内部类;

5. 继承多态

继承:
extends:继承实现代码的复用;
子类继承父类:所有成员方法,变量;(除了非静态的)

super: 代表使用父类的构造super(),父类的成员变量,成员方法;

继承关系上代码块于构造方法直接的执行顺序:
父类静态~ 子类静态~;=》父类实例,父类构造… =》子类实例,子类构造;

访问修饰限定符权限顺序:
private < default < protected < public
protected: 同包,不同包的子类;

多态: 一个人可以有不同的身份(教师,父亲,司机等)
同一个对象,所引用的对象不同,表现出的行为也不同;

向上转型:People people = new Student();
只能调用父类的成员,不能调用子类的成员;
①方法传参②返回值③直接赋值
动态绑定:父类引用,调用子类和父类的重写方法;

向下转型:Student student = (Student)People();
instanceof: 判断对象是否一样;

6. 抽象接口

抽象类:
类中可包含抽象方法,非抽象方法;
继承抽象类必须重写抽象方法;

接口:
成员变量:public static final => 常量
成员方法:public abstract => 都是抽象方法

7. 字符串类的使用

String:
字符串比较:equals()
字符串拆分:split()
字符串截取:substring()

字符串转为StringBuilder:
常用:append字符拼接
reverse():字符串翻转


总结

✨✨✨各位读友,本篇分享到内容如果对你有帮助给个👍赞鼓励一下吧!!
感谢每一位一起走到这的伙伴,我们可以一起交流进步!!!一起加油吧!!!


http://www.ppmy.cn/news/7714.html

相关文章

【SpringMVC】SpringMVC校验

校验理解 项目中&#xff0c;通常使用较多是前端的校验&#xff0c;比如页面中js校验。对于安全要求较高点建议在服务端进行校验。 服务端校验&#xff1a; 控制层conroller&#xff1a;校验页面请求的参数的合法性。在服务端控制层conroller校验&#xff0c;不区分客户端类…

【ESP-Matter】matter协议学习笔记--以乐鑫方案为例

matter协议学习笔记--以乐鑫方案为例0. 写在前边的话1. matter 协议基本概念2. 设备间的本地自动化交互2.1 同步控制的实例&#xff1a;2.2 异步通知&#xff08;订阅、报告&#xff09;3. 桥接设备4. thread 边界路由器5. 专业名词0. 写在前边的话 以下学习笔记均参考乐鑫官方…

一文了解什么是NFT

一、什么是NFT NFT 是我们可以用来代表独特物品所有权的代币。他们让我们对艺术品、收藏品甚至房地产等事物进行代币化。资产的所有权由以太坊区块链保护——没有人可以修改所有权记录或复制/粘贴新的 NFT。 NFT 代表不可替代的代币。Non-fungible 是一个经济学术语&#xff…

Java数组,list,set相互转换

1.list转为set List listnew ArrayList<>(new HashSet()); 2.set转为list Set setnew HashSet<>(new ArrayList()); 3.数组转为list int a{1,2,3,4}; List listArrays.asList(a); 4.数组转set int a{1,2,3,4,5,6}; Set setnew HashSet<>(Arrays.asLis…

Spark 之 Join

broadcast join spark.sql.autoBroadcastJoinThreshold 所配置的值&#xff0c;默认是10M&#xff0c;当某一张表的大小小于这个值时&#xff0c;将这张表收集到driver&#xff0c;然后广播到每一个executor上&#xff0c;这样的好处就是&#xff0c;大表进行join的时候&#…

【nowcoder】笔试强训Day12

目录 一、选择题 二、编程题 2.1二进制插入 2.2 查找组成一个偶数最接近的两个素数 一、选择题 1.以下方法&#xff0c;哪个不是对add方法的重载? public class Test {public void add( int x,int y,int z){} } A. public int add(int x,int y,float z){return 0;} B.…

解决医疗健康领域的网络安全和云技术技能差距

说明信息 近年来&#xff0c;网络安全事件 频发&#xff0c;事件造成的影响也日益增大&#xff0c;对于医疗健康行业&#xff0c;网络安全的重要性凸显。随着医疗信息化的普及&#xff0c;医疗设备与相关系统的安全性已经关系到医疗机构 业务的正常运营。勒索软件&#xff0c;…

Vim生成递增递减的数字【记录器的使用】

一、添加一列连续递增的数字 1、vim打开待编辑文本&#xff0c;先将光标定位到某空行行首&#xff0c;并保证vim处于普通模式&#xff08;normal模式&#xff09;&#xff0c;然后按顺序执行以下命令&#xff1a; i #进入插入模式; 9 #输入数字9 ESC…