Java语言知识大盘点(期末总复习)二

news2025/1/15 17:23:07

🌹作者:云小逸
📝个人主页:云小逸的主页
📝Github:云小逸的Github
🤟motto:要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前,其次就是现在!学会自己和解,与过去和解,努力爱自己。==希望春天来之前,我们一起面朝大海,春暖花开!==🤟
👏专栏:C++👏 👏专栏:Java语言👏
👏专栏:C语言初阶👏👏专栏:数据结构👏

文章目录

  • 前言
  • 1.类和对象:
    • a.类是什么?对象是什么?
    • b.类:
      • (1)类的格式:
      • (2)类怎么写?
        • 一般名词定义成成员变量(属性):
        • 一般动词定义成方法(行为)
          • 具体定义类的例子
    • c.对象:
      • 创建对象
      • 对象怎么使用
  • 2.构造器:
    • 作用:
    • 详细格式:
    • 构造器的分类:
      • 无参数构造器
      • 有参数构造器
    • 构造器如何调用呢?
    • 注意:
    • 例子:
  • 3.接口:
    • a.接口是什么?
    • b.格式:
    • c.接口的基本使用:
    • d.接口与接口的关系
    • e.接口从JDK 8开始新增了3个方法。
      • 1、默认方法:其实就是实例方法。
      • 2、静态方法
      • 3、私有实例方法:
    • f.注意:
  • 4.案例知识:键盘录入技术
  • 5.案例技术:随机数Random类
    • 作用:产生一个随机数
    • 步骤
  • 最后


前言

大家好,很高兴你点开这篇文章,这是【JAVA语言学习】专栏的第二篇文章,这篇文章主要讲述的是:类和对象,构造器,接口,案例知识:键盘录入技术,随机数Random类。
希望你可以喜欢,加油在这里插入图片描述

——————————————————————————————
首先先摘抄几句话送给你:献给坚持创作的我和点开这篇文章希望进步的你

1.跑步的多巴胺仅次于谈恋爱:三公里专治各种不爽,五公里专治各种内伤,十公里跑完,内心全是坦荡和善良。

2.你自己不倒,别人想推都推不倒,你自己不想站起来,被人扶也扶不起。能让你扬眉吐气的只有你自己。
你的独立和强大,你学得的知识和技能才是你最大的归宿和荣光。努力的过程本就是孤岛,但最后抵达的一定是充满生机的彼岸。

3.永远不要因为一些不值得的事和人而颓废,以至于浪费了你的自我提升的时间。沉默的努力吧,这才是你现在需要当作目标的事。
别摆烂了,摆烂没未来,去努力吧,试炼的终点终会是花开万里。

1.类和对象:

a.类是什么?对象是什么?

可以把类理解为设计图(相同事物共同特征的描述),对象是类的具体的实例。
结论:在Java中,必须先设计类,才能创建对象并使用。
在这里插入图片描述

b.类:

(1)类的格式:

在这里插入图片描述

public class Car {
    // 属性(成员变量)
    String name; // 名称
    double price; // 价格

    // 行为(方法)
    public void start(){
    }
    public void run(){
    }
}

定义类有一些注意事项:
1、类名首字母建议大写,有意义,满足驼峰,不要用关键字,合法的标志符
2、一个Java文件中可以定义多个类,但是只能一个类是public修饰的,而且public修饰的类名必须成为Java代码的文件名称,否则报错!
3.成员变量的完整定义格式是:修饰符 数据类型 变量名称 = 初始化值; 一般无需指定初始化值,存在默认值

(2)类怎么写?

以定义汽车类为例

一般名词定义成成员变量(属性):

修饰符 数据类型 变量名称 = 初始值;

	private String name;
	private double price;

成员变量不建议给初始化值,存在默认值,默认值的规则:整型是0,浮点型是0.0 引用类型null,布尔型是false
在这里插入图片描述

一般动词定义成方法(行为)

具体定义类的例子
public class Car {
// 名词(属性,成员变量)
String name;
double price;

// 动词(行为,成员方法)
public void start(){
    System.out.println(name + "价格是" + price +"启动成功~~");
}

public void run(){
    System.out.println(name +
            "价格是" + price +"性能很好,跑的很快~~");
}

}

c.对象:

创建对象

类名  对象名 = new  构造器();

对象怎么使用

	对象名.成员变量
	对象名.成员方法

2.构造器:

作用:

定义在类中的,可以用于初始化一个类的对象,并返回对象的地址

详细格式:

修饰符 类名(形参列表){
   ...
}
如:
	// 无参数构造器
      public Car(){
			...
			}
    // 有参数构造器
      public Car(String n, double p){
			...
	}

构造器的分类:

无参数构造器

初始化一个类的对象,并返回这个对象的地址,里面的数据都是默认值

有参数构造器

初始化一个类的对象,并返回这个对象的地址,并且可以同时为对象赋值。

构造器如何调用呢?

类名 对象名 = new 构造器;

注意:

任何类写出来自带一个无参数构造器,写不写都会有的
如果你在这个类中定义了一个有参数构造器了,那么无参数构造器就消失了,此时,如果你还要使用无参数构造器,你必须自己写一个。

例子:

public class Car {
    String name;
    double price;

    /**
       无参数构造器
     */
    public Car(){
        System.out.println("无参数构造器被调用了~~");
    }

    /**
     有参数构造器
     */
    public Car(String n, double p){
        System.out.println("有参数构造器被调用了~~");
        name = n;
        price = p;
    }
}

3.接口:

a.接口是什么?

接口是规范:约束别人必须干什么事情。
1.规范的基本特征是约束和公开。
2.接口中的抽象方法:默认会自动加上public abstract修饰,不写也有
3.接口中的常量。默认加上public static final修饰,写不写也有

b.格式:

在这里插入图片描述

c.接口的基本使用:

被类实现:实现接口的类称为实现类(子类)

注意:接口可以被类多实现
注意:一个类实现多个接口,必须重写完全部接口的全部抽象方法,
否则这个类必须成为抽象类。

d.接口与接口的关系

1.类与类:单继承,一个类只能继承一个直接父类。
2.类与接口:多实现,一个类可以实现多个接口
3.接口与接口:多继承,一个接口可以继承多个接口。这样可以合并多个接口。

e.接口从JDK 8开始新增了3个方法。

1、默认方法:其实就是实例方法。

       -- 必须用default修饰,默认会自带public
       -- 必须用接口的实现类的对象来调用

2、静态方法

        -- 必须static修饰,默认会自带public
        -- 必须用接口名自己调用

3、私有实例方法:

           -- 必须用private修饰
           -- 只能本接口中访问。
           -- 一般给接口中其他的默认方法或者私有实例方法使用的

    /**
       1、默认方法:其实就是实例方法。
           -- 必须用default修饰,默认会自带public
           -- 必须用接口的实现类的对象来调用
     */
    default void run(){
        go();
        System.out.println("==跑的贼溜==");
    }

    /**
      2、静态方法
            -- 必须static修饰,默认会自带public
            -- 必须用接口名自己调用
     */
    static void inAddr(){
        System.out.println("我们在黑马");
    }

    /**
      3、私有实例方法:
           -- 必须用private修饰
           -- 只能本接口中访问。
           -- 一般给接口中其他的默认方法或者私有实例方法使用的
     */
    private void go(){
        System.out.println("开始跑~~");
    }
}
新增三种方法给Java自己用的。为了方便项目维护。
我们只需要知道有这三种方法,并且明白特点会访问即可。

f.注意:

1、接口不能创建对象
2、一个类实现多个接口,多个接口的规范不能冲突
2、一个类实现多个接口,多个接口中有同样的静态方法不冲突。
3、一个类继承了父类,同时又实现了接口,父类中和接口中有同名方法,默认用父类的。
4、一个类实现了多个接口,多个接口中存在同名的默认方法,可以不冲突,这个类重写该方法即可。
5、一个接口继承多个接口,是没有问题的,如果多个接口中存在规范冲突则不能多继承。

4.案例知识:键盘录入技术

	1、导包(自动导包):import java.util.Scanner;
	2、创建一个扫描器对象:Scanner sc = new Scanner(System.in);
	3、等待接收用户的数据:int  age = sc.nextInt();
	4、等待接收用户的数据:String name = sc.next();

5.案例技术:随机数Random类

作用:产生一个随机数

步骤

	1、导包(自动做的:) import java.util.Random;
	2、创建随机数对象:Random r = new Random();
	3、开始得到随机数 : int data = r.nextInt(10); //  0 - 9

最后

十分感谢你可以耐着性子把它读完和我可以坚持写到这里,摘抄几句话送给你,对你,也对我:
1.想起一句话:“江湖不相信眼泪,社会不同情弱者。”生活不会因为你的脆弱,给你想要的一切,更不会因为你的痛苦,为你降低标准。没人在乎你辗转反侧的几个夜晚,也没人在乎你奔波劳碌的几个春秋。别人只关心你有没有本事,拿出了什么结果。

2.水再浑浊,要长久沉淀,依然会分外清澈。人再愚钝,只要足够努力,一样能改写命运。不要愤懑起点太低,那只是我们站立的原点。人生是一场漫长的竞赛,有些人笑在开始,有些人却赢在最后。

3.我从未见过一个早起、勤奋、谨慎、诚实的人,抱怨命运不好的。但努力是一件特别需要沉下心来长久坚持的事。它成长的土壤需要一个人单打独斗,忍受无数个孤独和寂寞的日子。心可以碎,手不能停,该干什么干什么,在崩溃中继续前行,这才是一个成年人该有的素养。

最后如果觉得我写的还不错,请不要忘记点赞✌,收藏✌,加关注✌哦(。・ω・。)

愿我们一起加油,奔向更美好的未来,愿我们从懵懵懂懂的一枚菜鸟逐渐成为大佬。加油,为自己点赞!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/19205.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022年珠海市第三届半导体行业集成电路测试工竞赛成功举办

11月19日,2022年珠海市第三届职业技能大赛暨香洲区第七届“香洲工匠”职业技能竞赛半导体行业集成电路测试工竞赛在珠海这片创新热土上成功举办,48支集成电路高素质技能人才队伍齐聚香江,同台竞技,碰撞出绚烂的“芯”火花。 香洲区…

Spring之Gateway网关

前言 什么是网关?简单理解就是我们所有服务的入口,当我们使用了微服务以后,每个服务都会有一个对应的接口,比如我们有用户服务,订单服务等等,如果没有网关的话,那么前端是这样调用的 很明显app和…

Design a TinyURL

title: Notes of System Design No.02 — Design a TinyURL date: 2022-05-05 13:23:57 tags: 系统设计 categories: 系统设计 description: " Design a TinyURL" 1.Functional Requirements 1.长链接->短链接(写) 2.短链接->长链接(读) 3.可以设置超时时间…

unittest框架

unittest框架1.通过unittest框架创建测试2.通过unittest框架添加断言3.自动化用例管理TestLoader类的用法4.unittest智能封装等待1.通过unittest框架创建测试 1.必须继承于unittest.TestCase类 2.可以定义setUp和tearDown方法进行初始化,每条测试用例开始或结束会执…

谷歌浏览器-chrome浏览器占用电脑CPU过高、容易崩溃的解决办法

一、问题背景 最近特别难受的一点——谷歌浏览器总是莫名其妙崩溃,而且明明是只开了两三个标签页的情况下。 不管是谷歌自己的任务管理器,还是win10自带的任务管理器;在崩溃情况下,谷歌浏览器的电脑cpu占用率高达80以上。 网上…

Java01-JDK1.8下载安装教程(win11版)

文章导航JDK 1.8 官网下载(下载慢)百度网盘下载(下载快)安装过程JDK环境配置教程验证JDK是否安装成功使用JDK1.8的原因当下互联网行情以及个人建议JDK 1.8 官网下载(下载慢) 点击跳转至JDK1.8官方网址 32…

暴雪和网易分手百万玩家何去何从

暴雪和网易分手百万玩家何去何从 这两天看到很多报道说网易与暴雪分手的消息,作为一个游戏玩家我甚是感到很意外。 看了不少相关的报道消息才有了今天的这篇文章 暴雪和其旗下《魔兽世界》等游戏陪伴了我们这一代人成长,或许终究不属于这个时代。看到暴…

智慧路灯解决方案-最新全套文件

智慧路灯解决方案-最新全套文件一、建设背景二、思路架构三、建设方案四、获取 - 智慧路灯全套最新解决方案合集一、建设背景 智慧城市是利用信息通信技术感知、分析、整合城市运行核心系统的各种关键信息,从而改善民生、环保、公共安全、城市服务、智能响应包括工…

【Java八股文总结】之反射

文章目录Java反射一、泛型1、何为泛型?2、泛型通配符Q:泛型擦除是什么?3、泛型上限和下限二、反射1、何为反射?2、反射有什么用?3、反射应用场景有哪些?Q:反射的优缺点?4、反射获取C…

三极管集电极电阻的作用

放大状态:电流信号转变为电压信号 饱和状态 ;发射极正偏,集电极反偏 当有无电阻的作用。当集电极有电阻时,可以得到随IC电流变化的电压信号,当工作在饱和状态。集电阻电阻越大。越容易进入饱和状态.当Ib有个小电流,Ic会出现大的…

Dubbo的SPI机制

目录 什么是 SPI Java SPI 示例 Java SPI 源码分析 想一下 Java SPI 哪里不好 Dubbo SPI Dubbo SPI 简单实例 Dubbo 源码分析 getExtensionClasses Adaptive 注解 - 自适应扩展 Adaptive 注解在类上 Adaptive 注解在方法上 WrapperClass - AOP injectExtension - …

webpack 官方文档解读一(详细使用教程) 起步

什么是webpack 就是个打包工具。通过一系列插件帮你优化项目,压缩,混淆等。总之什么脏活累活都能干。 入门案例 创建一个目录,并安装webpack和webpack-cli这两个包。webpack包是webpack本体,webpack-cli是他提供的工具包。 mk…

RTL8380M/RTL8382M管理型交换机系统软件操作指南二:转发表

前面介绍了端口配置,这次对转发表进行详细的描述,主要包括以下三方面内容:基础配置、转发表、删除1.1 基础配置 1.1.1 老化时间 老化时间是一个影响交换机学习进程的参数。从一个地址记录加入地址表以后开始计时,如果在老化时间内各端口未收…

ResNet网络详解

ResNet ResNet在2015年由微软实验室提出,斩获当年lmageNet竞赛中分类任务第一名,目标检测第一名。获得coco数据集中目标检测第一名,图像分割第一名。 ResNet亮点 1.超深的网络结构(突破1000层) 2.提出residual模块 3.使用Batch Normalizat…

java项目-第147期ssm社区生活超市管理系统_(spring+springmvc+mybatis+jsp)_java毕业设计_计算机毕业设计

java项目-第147期ssm社区生活超市管理系统_(springspringmvcmybatisjsp)_java毕业设计_计算机毕业设计 【源码请到资源专栏下载】 今天分享的项目是《ssm社区生活超市管理系统》 该项目分为3个角色,管理员、用户、供应商角色。 用户可以浏览前台商品,进行…

[附源码]java毕业设计软件项目过程管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

牛客小白月赛 61 E 排队

题目大意: n个数,共有n!种排列方式,记Pi(a)表示序列a的第i种排队方式,cnt(Pi(a))表示P(i)的逆序对个数,PLMM想知道这n!种排列方式共有多少对逆序对 给定一个 nnn 个数,在所有排列顺序…

Windows 11 Insider Preview Build 25247.1000(rs_prerelease)更新内容

微软于今日推出了新的Dev预览版25247.1000,引入了电源设置的新能源建议,“帐户”页面现在会在 OneDrive 存储空间不足时显示警告。下面就和小编一起来看看详细的更新内容吧。 更新内容 此版本包括一些新功能,包括能源建议、任务管理器的一些改…

MySQL8.0优化 - 锁 - 从数据操作的类型划分:读锁、写锁

文章目录学习资料锁的不同角度分类锁的分类图如下从数据操作的类型划分:读锁、写锁读锁写锁锁定读MySQL8.0新特性写操作学习资料 【MySQL数据库教程天花板,mysql安装到mysql高级,强!硬!-哔哩哔哩】 【阿里巴巴Java开…

【21-业务开发-基础业务-商品模块-分类管理-商品系统三级分类的新增类别前后端代码实现-商品系统三级分类的更新类别前后端代码实现-之前错误的Bug修正】

一.知识回顾 【0.三高商城系统的专题专栏都帮你整理好了,请点击这里!】 【1-系统架构演进过程】 【2-微服务系统架构需求】 【3-高性能、高并发、高可用的三高商城系统项目介绍】 【4-Linux云服务器上安装Docker】 【5-Docker安装部署MySQL和Redis服务】…