您现在的位置是:首页 > 正文

Java-类的五大成员

2024-01-30 23:32:04阅读 0

Java学习笔记

类的五大成员



一、属性

属性用于定义该类或该类的实例所包含的数据。
定义属性的语法格式:[修饰符] 属性类型 属性名 [=默认值]
1、修饰符:修饰符可以省略,也可以是public、protected、private、static、final,其中public、protected、private三个最多只能出现其中之一,可以与static、final组合起来修饰属性。
2、属性类型:属性类型可以是Java语言允许的任何数据类型,包括基本类型和现在介绍的引用类型。
注意:有的也称成员变量是属性。


二、方法

方法是用于定义该类或该类的实例的行为特征或功能实现。
定义方法的语法格式:
[修饰符] 方法返回值类型 方法名(形参列表)
{
//由零条到多条可执行性语句组成的方法体
}


三、构造器

构造器也叫构造方法,是一种特殊类型的方法,用于创建对象时对成员变量初始化。
构造器的语法:
修饰符 类名(数据类型 变量名){
}

ps:创建一个对象一般分为四步:
1、分配对象空间,并将对象的成员变量初始化为0或空(数值型变量为0,字符型为空)。
2、执行属性值的显示初始化。(显示初始化就是在声明变量时直接赋值的操作)
3、执行构造方法。
4、返回对象地址给相关变量。
故java中对象的创建并不是由构造器创建的,构造器只是用来给初始化对应成员变量的值。


四、代码块

使用{}定义的一段代码称为代码块。
代码块可以分为四种:
1、普通代码块
在方法或语句中出现的{}就称为普通代码块。
2、构造代码块
直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造块会在创建对象时被调用,每次创建时都会被调用,优先于类构造函数执行。
注意:构造块并不是构造方法里的代码块。
3、静态代码块
用static{}包括起来的代码块,只会执行一次。静态代码块优先于构造块
执行。静态块用于初始化类,为类的属性初始化。每个静态代码块只会执行一次。由于JVM在加载类时会执行静态代码块,所以静态代码块先于主方法执行。
4、同步代码块
使用synchronized(){}包裹起来的代码块,在多线程环境下,对共享数据的读写操作是需要互斥进行的,否则会导致数据的不一致性。同步代码块需要写在方法中。

代码块的执行顺序:静态代码块最先执行,并且只有在创建该类的第一个实例的时候才会执行一次。第二执行的是构造块;第三执行的是构造方法。


五、内部类

1、成员内部类
2、静态内部类
3、方法内部类
4、匿名内部类

网站文章

  • 服务器安装node,配置vue环境

    服务器安装node,配置vue环境

    1.node下载包链接:https://pan.baidu.com/s/1fCDwL3dSOsGeIMOn0q3lsA提取码:thk62.node官网CNPM Binaries Mirror下载.gz...

    2024-01-30 23:31:58
  • c++中set与map用法详解

    关于STL c++ STL之所以得到广泛赞誉,也被很多人使用,不只是提供了向vector,string,list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和常用的数据结构操作。vect...

    2024-01-30 23:31:25
  • JavaScript - 判断字符串中是否包含特殊字符与空格(正则表达式)

    我们在验证一个字符串是否为空或包含特殊字符时,可使用本文提供的正则表达式,省去很多校验代码。如下正则表达式,可保证字符串的合法性。

    2024-01-30 23:31:17
  • Linux signal()和kill()

    Linux signal()和kill()

    编写程序:用 fork( )创建两个子进程,再用系统调用 signal( )让父进程捕捉键盘上来的中断信号(即按^c 键);捕捉到中断信号后,父进程用系统调用 kill( )向两个子进程发出信号,子进...

    2024-01-30 23:30:47
  • 一步一步学Silverlight 2系列(32):图形图像综合实例—“功夫之王”剧照播放...

    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://terrylee.blog.51cto.com/342737/68194 ...

    2024-01-30 23:30:40
  • 如何使用js来编写vue组件?

    如何使用js写vue组件?3分钟看懂,简单示例代码。完整代码。可复制直接进行运行

    2024-01-30 23:30:33
  • PAT 1039 Course List for Student (25 分)

    PAT 1039 Course List for Student (25 分)

    1039 Course List for Student (25 分) Zhejiang University has 40000 students and provides 2500 courses...

    2024-01-30 23:29:54
  • windows安装配置git和ToriseGit

    windows安装配置git和ToriseGit

    --------------------------安装完成,接下在是配置---------------------------------完成后,点击,下面的save public key和save...

    2024-01-30 23:29:45
  • springboot集合aciviti报错sun.reflect.annotation.TypeNotPresentExceptionProxy

    import org.activiti.spring.boot.SecurityAutoConfiguration;@SpringBootApplication(exclude = SecurityAutoConfiguration.class)

    2024-01-30 23:29:36
  • SPFA——路障Roadblocks

    将每条无向边拆成两条有向边 建图分别以1、n为原点SPFA求最短路 分别记为dis1[i]、dis2[i]枚举每一条有向边i(起点为u 终点为v 长度为w)经过该有向边i的最短路长即为 dis1[u]+w+dis2[v]求这些“最短路长”中比“真·最短路”长的最短长度

    2024-01-30 23:29:30