当前位置: 首页 > ds >正文

java进阶

类的5大成分:

1.成员变量

2.成员方法

3.构造方法

4.代码块

5.内部类

构造器:

格式:

修饰符 类名(形参){

}

默认会提供一个无参构造器,如果自己创建了构造器,那么默认提供的无参构造器会失效。

this关键字:

this代表了当前对象的引用;

this关键字可以用在实例方法和构造方法中

this用在方法中,谁调用这个方法,this就代表谁。

this用在构造器,代表构造器正在初始化那个对象的引用。

static关键字:

按照有无static关键字修饰来划分,成员方法和成员变量可分为:

成员变量:

1.静态成员变量(类变量):

使用static关键字修饰,属于类本身,可以直接通过类名访问;与类一起只加载一次。

2.实例成员变量:

没有staic关键字修饰称为实例成员变量,属于类的每个对象,必须通过类的实例对象来方法。与类的对象一起加载,每次创建类的对象就会加载一次。

成员方法:

1.静态方法:

有static修饰的成员方法称为静态方法,也叫类方法,属于类本身,直接用类名访问即可。

2.实例方法:

没有static修饰的成员方法称为实例方法,属于类的每个对象,必须通过类的对象来访问。

继承:

重写:

静态方法和私有方法都不可以被重写》

静态方法是属于父类本身的,所以继承并没有继承这个方法,所以不支持重写。

构造方法继承

子类构造方法的第一行,默认会有super();用来调用父类的无参构造器,在代码中不显式出现。

原因:子类继承父类,就得到的 父类的成员变量和方法,当子类使用构造方法初始化时,必须先调用父类构造器初始化父类的成员变量和方法,子类才能进行调用。

抽象类:

抽象类有构造器吗?是否可以创建对象?

抽象类有构造器,但是不能创建对象,因为抽象的抽象方法没有方法体,不能执行,所以不能创建对象。

抽象类不能创建对象,可以包含抽象方法,除此之外,类有的要素,抽象类都具有。

静态代码块:

静态代码块与类一起加载,并且会默认自动触发执行一次。

静态代码块可以用来初始化值。

实例代码块:

实例代码块属于类的每个对象,会在类的对象初始化时进行加载。

枚举类:

枚举类的特点:

1.枚举类时final修饰的,不能被继承;

2.枚举类默认继承了枚举类型:java.lang.Enum;

3.枚举类的第一行罗列的是枚举类的对象,而且是用常量存储的;

4.所以枚举类第一行写的都是常量名称,默认是存储了枚举类型;

5.枚举类的构造器默认是私有的;

6.枚举类相当于多例设计模式。

http://www.xdnf.cn/news/14858.html

相关文章:

  • 基于Uniapp+SpringBoot+Vue 的在线商城小程序
  • matplotlib 绘制水平柱状图
  • Java面试题030:一文深入了解MySQL(2)
  • Geollama 辅助笔记:raw_to_prompt_strings_geo.py
  • 印度和澳洲的地理因素
  • BUUCTF [ACTF新生赛2020]music 1
  • TCP 和 UDP 是什么?
  • nginx基本使用 linux(mac下的)
  • MSPM0G3507之GPIO配置报错 #Sysconfig报错
  • 数据结构与算法 --- 双向链表
  • 从 AJAX 到 axios:前端与服务器通信实战指南
  • VR训练美国服务器:高性能解决方案与优化指南
  • 可编程逻辑器件的发展与比较
  • 逆向入门(22)程序逆向篇-TraceMe
  • FPGA设计的上板调试
  • Cisco FMC events无法加载并且cpu high故障- Cisco bug
  • Grab×亚矩阵云手机:以“云端超级节点”重塑东南亚出行与数字生活生态
  • AngularJS Git 提交消息规范
  • VS Code 配置本地 Dev Container
  • (LeetCode 每日一题) 2099. 找到和最大的长度为 K 的子序列 (排序)
  • 翻译服务器
  • SpringMVC系列(七)(Restful架构风格(下))(完结篇)
  • 第一章 从零开始学习大型语言模型-搭建环境
  • Spring Cloud:微服务架构的基石与实践指南
  • 从0开始学习计算机视觉--Day04--损失函数
  • C++动态链接库之非托管封装Invoke,供C#/C++ 等编程语言使用,小白教程——C++动态链接库(一)
  • Linux系统(信号篇)信号的保存
  • 在反向代理环境下精准获取客户端真实 IP 的最佳实践
  • Vue样式绑定与条件渲染详
  • 玄机抽奖Spring Web项目