广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >JAVA学习笔记- - - day 2
  • 769
分享到

JAVA学习笔记- - - day 2

学习 2023-09-04 07:09:52 769人浏览 薄情痞子
摘要

 💕前言:作者是一名正在学习JAVA的初学者,每天分享自己的学习笔记,希望能和大家一起进步成长💕 目录  💕前言:作者是一名正在学习JAVA的初学者,每天分享自己的学习笔记,希望能和

 💕前言:作者是一名正在学习JAVA的初学者,每天分享自己的学习笔记,希望能和大家一起进步成长💕

目录

 💕前言:作者是一名正在学习JAVA的初学者,每天分享自己的学习笔记,希望能和大家一起进步成长💕

封装(重点)

数组

一维数组(重点)

二维数组

方法的重载(重点)

this关键字(重点)

构造器(重点)

默认构造器

有参构造器

static关键字(重点)

属性上(静态属性/变量)

方法上(静态方法)

静态代码块

设计模式(重点)

单例

封装(重点)

目的:提高数据的安全性,通过封装,可以实现对属性访问权限的控制,同时增加了程序的可维护性。

封装: 将属性私有化,使用private关键字修饰属性,这种属性只有当前类才能访问。

我们一般给每一个私有属性提供公共public的get和set这种方法供外界来访问我们的私有属性

public 修饰符的作用范围:

private 作用范围

protected 的作用范围

default 的作用范围:

用一个类同一个包不同的包非子类不同包的子类
private可以访问不可以访问不可以访问不可以访问
public可以访问可以访问可以访问可以访问
protected可以访问可以访问不可以访问可以访问
default可以访问可以访问不可以访问不可以访问

数组

一维数组(重点)

说明: 数组的索引是从0开始的

语法:

第一种: 数据类型[] 数组变量名 = new 数据类型[整数]; (整数为数组的长度)

第二种: 数据类型[] 数组变量名 = {值1,值2,值3};( 数组的长度是根据初始化决定的)

第三种: 数据类型[] 数组变量名 = new 数组类型[]{值1,值2,值3,值4};

二维数组

说明:二维数组就是集合套集合

语法: 数据类型 数组变量名 = new 数组类型[整数] [整数];

方法的重载(重点)

定义: 在同一个类中,方法的名字一样,参数列表不一样(包括参数类型)的两个方法是重载关系,跟返回值没有关系。

目的: 为了节约方法的功能命名和提高代码的可读性。

this关键字(重点)

this只能在对象方法内使用(重要)

对于类的对象来说,属性是每个对象都有一份的,是数据隔离的,但是方法是多个对象共享的。不同对象调用这个方法的时候,是用this来区分不同对象的数据,this是可以隐藏的。

构造器(重点)

用于创建对象的方法,固定格式,给对象赋初始值。

构造器本身是一个方法:

没有返回值,也没有void

构造器的方法名必须和类名一致

在方法中定义要初始的参数列表

语法:

权限修饰符 类名(数据类型 参数名.....){

}

默认构造器

权限修饰符 类名(){

}

有参构造器

权限修饰符 类名(数据类型 参数名.....){

}

注意点:

如果一个类存在有参数的构造器,那么默认的构造器就会被覆盖,如果想要使用默认的构造器,那么需要显示的定义。

同一个类中的构造器可以相互调用,需要通过this()来调用。this()该构造器的第一行。

在构造器中调用其他构造器,不会创建对象,只初始化。

static关键字(重点)

属性上(静态属性/变量)

加上static的属性是类属性,静态属性/全局属性

特点:

static修饰的类属性的访问可以通过 : 类名.类属性 还可以通过对象来访问

static修饰的类属性在当前的class文件加载到JVM的时候就被初始化

当jvm销毁了这个类,那么这个类的static属性也销毁

方法上(静态方法)

语法: public static (返回值) 方法名(数据类型 变量,数据类型 变量){

方法体

[return 结果]

}

static修饰的方法就是类方法

注意点:

类方法初始化很早,类被jvm加载后,就初始化了类方法。而普通的方法(对象的方法)也加载进入了jvm,但是要等到对象被实例化后,这个方法才能被使用。

普通方法中访问该属性时,隐藏了this,如果没有实例化,这个this就不存在。

static修饰的方法不能访问没有static修饰的类属性,即类方法不能访问对象非static修饰的属性,也不能调用非static修饰的方法,对象方法(非static修饰的方法)可以调用类方法。

对象方法可以访问类的所有属性和方法

静态代码块

语法: class A{

//静态代码块

static{

}

}

静态代码块主要是用于初始化资源

静态代码块在main之前执行

设计模式(重点)

单例

说明:这种模式只产生一个对象(只有一个实例)

应用场景: windows资源管理器,java数据库中的连接池,网站的计数器,一般也是采用单例模式实现,否则难以同步。

步骤:

私有化构造参数

定义一个类方法用于获得单例的对象

在类中提供一个这个类类型的类属性(要用static修饰)

在类方法中返回实例化的对象

来源地址:https://blog.csdn.net/m0_71956038/article/details/128049771

--结束END--

本文标题: JAVA学习笔记- - - day 2

本文链接: https://www.lsjlt.com/news/393180.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JAVA学习笔记- - - day 2
     💕前言:作者是一名正在学习JAVA的初学者,每天分享自己的学习笔记,希望能和大家一起进步成长💕 目录  💕前言:作者是一名正在学习JAVA的初学者,每天分享自己的学习笔记,希望能和...
    99+
    2023-09-04
    学习
  • Linux学习笔记 Day 2~3
    继续整理周末课程的Linux学习笔记。 vim编辑器 最受欢迎的是emacs,vim是vi的增强版本,特点是编辑内容时有颜色变化。命令:vim /etc/passwd 三种模式: 1. 普通模式-->可视模式 2....
    99+
    2023-01-31
    学习笔记 Linux Day
  • Python 学习笔记 Day 01
    CPU  相当于人的大脑 内存  存储数据  4G  8G  16G  32G  --成本高 断电即消失 硬盘  1T  固态硬盘  机械硬盘  应该长久保存的数据 重要文件 操作系统 应用程序 宏观上:python2与python3...
    99+
    2023-01-31
    学习笔记 Python Day
  • Python学习笔记(2)
    Unicode字符串: GB2312编码为表示中文产生 python内部编码是unicode编码Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填0 就可以以Unicode表示的字...
    99+
    2023-01-31
    学习笔记 Python
  • Python学习笔记(2)
    Python开发IDE:pycharm   ,eclipse 快捷键:Ctrl+?整体注释 一·运算符   +(加)   -(减)  *(乘)   /(除)  **(幂)  %(余)   //(商)     判断某个东西是否在某个东西里边...
    99+
    2023-01-30
    学习笔记 Python
  • python3学习笔记(2)----p
    1、python3的基本数据类型 Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。等号(=)用来给...
    99+
    2023-01-31
    学习笔记
  • 【gcc】RtpTransportControllerSend学习笔记 2
    在【gcc】RtpTransportControllerSend学习笔记 1 中, 跟着 大神ishen 从RtpTransportControllerSend 到cc-controller对gc...
    99+
    2023-10-07
    学习 笔记
  • Python学习笔记2——Python概
    Python概述   语言:交流的工具,沟通媒介   计算机语言:人跟计算机交流的工具,翻译官   Python是计算机语言里的一种     代码:人类语言,同过代码命令机器,跟机器交流     Python解释器: 就是那个担任翻译工作...
    99+
    2023-01-30
    学习笔记 Python
  • Python第五周 学习笔记(2)
    一、实现一个cache装饰器,实现可过期被清除的功能 简化设计,函数的形参定义不包含可变位置参数、可变关键词参数和keyword-only参数 可以不考虑缓存满了之后的换出问题 1)原始 def cache(fn): imp...
    99+
    2023-01-31
    学习笔记 Python
  • mysql学习笔记(2-初始化)
    初始化:(1)给root用户设置密码(三种方式): SET PASSWORD FOR 'username'@'host' = PASSWORD('your_password'); updat...
    99+
    2022-10-18
  • 【MySQL学习笔记】2、SQL语句
    一、SQL语句SQL:Structured Query Language,结构化查询语言,是客户端和SQL服务器进行对话的语言用于跟SQL服务器对话属于解释执行的编程语言,其代码文件通常称为脚本,直接被解释...
    99+
    2022-10-18
  • python学习笔记2—python文件
    python学习笔记2——python文件类型、变量、数值、字符串、元组、列表、字典一、Python文件类型1、源代码python源代码文件以.py为扩展名,由pyton程序解释,不需要编译[root@localhost day01]# v...
    99+
    2023-01-31
    学习笔记 文件 python
  • java大数据最全课程学习笔记(2)-
    目前CSDN,云海天,简书同步发表中,更多精彩欢迎访问我的gitee pages 目录Hadoop完全分布式运行模式步骤分析:编写集群分发脚本xsync集群配置集群部署规划配置集群集群单点启动SSH无密登陆配置登录状态的环境变...
    99+
    2021-07-11
    java大数据最全课程学习笔记(2)-
  • Java编程思想(2nd)学习笔记(8)-2 (转)
    Java编程思想(2nd)学习笔记(8)-2 (转)[@more@]二.  Inner classes(内隐类)1.  内隐类的基本用法1)  如果要在外围class的non-static函数之外产生一个inn...
    99+
    2023-06-03
  • solr 学习笔记2-----schema和field ty
    schema文件详细存储了field和field type信息。初始化配置的不同,或是后面配置的修改会导致所使用的shema文件不同。 managed-schema.xml文件,是默认的schema配置文件...
    99+
    2022-10-18
  • DBA入职指南学习笔记2
    创建用户      create user ecology identified by nskfoa; 2、用户授权      grant connect to ecology;  连接权限 3、授权表权限      grant selec...
    99+
    2016-06-18
    DBA入职指南学习笔记2
  • MySQL学习笔记(2)--命令大全
    命 令 含 义 show databases; 查看当前数据库所有的库 show create database 数据库名; 查看当前数据的创建方式 create database...
    99+
    2022-10-18
  • Mysql学习笔记2--使用入门
    ---创建数据库kakaxi mysql> create database kakaxi; Query OK, 1 row affected (0.02 sec) ---要知道系统中有哪些数据库,可...
    99+
    2022-10-18
  • Python学习笔记:第2天while循
    目录 1. while循环 continue、break和else语句 2. 格式化输出 3. 运算符 ...
    99+
    2023-01-30
    学习笔记 Python
  • Android学习笔记(Android Studio)2-6~2-8(CheckBox、ImageView、ListView )
    Android学习笔记2-6~2-8 推荐新手向学习视频:B站https://www.bilibili.com/video/av3840996...
    99+
    2022-06-06
    android学习 Android Studio checkbox studio listview Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作