首页 > 编程语言 >随笔02---JavaSE基础知识

随笔02---JavaSE基础知识

时间:2023-07-23 12:12:03浏览次数:55  
标签:02 调用 子类 接口 --- 关键字 JavaSE 父类 方法

(1)基本数据类型:

八大基本数据类型:

1、整数类型:

byte 占1字节

short 占2字节

int 占4字节

long 占8字节 (定义时后面加L)

2、浮点数类型:

float 占4字节(后加F)

double 占8字节

3、字符类型:

char 占2字节

4、布尔类型:

boolean 占1个比特位(1bit)

(2)引用数据类型:类、接口、数组

---------------------------------------------------------------------------------------

二进制0b开头,八进制0开头,十六进制0x开头

 

 

强制类型转换:高----》低 eg:int转byte,可能出现内存溢出,低容量数据类型装不下大数据

自动类型转换:低----》高

 -------------------------------------------------------------------------------------------------------------------------------------------------------------

实例变量:类的内部,方法的外部定义的变量,从属于对象,用对象来调用变量

局部变量:方法内部

类变量:加了关键字static的变量,定义位置和实例变量一样

常量:定义用final关键字

 

 

 

 

 -----------------------------------------------------------------------------------------------------------------------------------------------------

开发中必须把package包放在首行,在用import导入其他包。

javaDoc使用命令行可以生成API文档,包括开发作者、版本号等、、、、在命令行下使用javadoc -encoding UTF-8 -charset UTF-8 Doc.java 命令

 

 

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

用户交互Scanner对象的使用

 

 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

递归结构:

递归头:什么条件下不调用自身方法,没有最后的边界尽头,程序会陷入死循环。

递归体:什么条件下需要调用自身方法。

 

 

 

 

 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

面向对象编程OOP:以类的方式组织代码,以对象的方式组织(封装)数据。

三大特性:封装、继承、多态。

方法的调用:加static的静态方法:用类名调用方法;非静态方法:先new出对象,实例化后调用。

new一个对象本质在调用构造器,new对象时不给参数则调用无参构造器;给参数则调用有参构造器。定义了有参构造器,如果想使用无参形式new对象,必须显示写出无参构造器。构造器的作用是初始化数据。IDEA中,使用alt+inter快捷键自动生成构造器。

 封装(数据/信息的隐藏):应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问。实现高内聚、低耦合。提高程序的安全性,保护数据。隐藏代码的实现细节。统一接口。增加系统可维护性。

继承:对类的抽象,类与类之间的一种关系,还有聚合、组合等。继承使用extends关键字。 

多态:

1、多态是方法的多态,属性没有多态。

2、父类和子类,父类可以转换成子类,否则可能出现类型转换异常ClassCastException。子类转换为父类,低转高自动转换,可能丢失自己本来的方法。父类转换子类,高转低强制转换。

3、子类重写父类方法,父类引用指向子类对象,运行时确定使用父类方法还是子类方法。

 

重载:方法名一样,参数列表不同。 

重写:子类和父类的方法定义必须相同,方法内部的实现内容(方法体)不同。

1、前提:需要有继承关系,子类重写父类的方法。2、方法名必须相同,参数列表必须相同。3、修饰符范围可以扩大不能缩小,public>protected>default>private 。4、抛出异常:范围可以缩小但不能扩大。classNotFpundException<Exception

重写的作用:父类的功能,子类不一定需要或者不一定满足。IDEA中使用alt+Insert的override选择方法自动重写。

 

super关键字:

 

instanceof关键字:

A instanceof B  若A\B之间有父子继承关系,则该表达式为true,否则为false.

 static关键字:

 

 abstract抽象类:

抽象类只有抽象方法,没有方法的实现,只能在继承抽象类的子类来实现方法。抽象类中可以写普通方法,但是包含抽象方法的类必须定义成抽象类。

接口:类是单继承,接口是多继承。使用interface关键字。

普通类:只有具体实现。抽象类:具体实现和规范(抽象方法)都有。接口:只有规范,自己无法写方法,约束和实现分离。

1、接口中定义的方法都是抽象方法。方法默认public abstract类型,变量默认public static final类型

2、实现接口的类需要重写接口中的方法。使用implements关键字实现接口。

接口的作用:接口是一种约束,定义一些方法让不同的人实现。

 

内部类:

 

 

 

通过外部类来实例化内部类。内部类可以使用外部类的私有变量。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

异常机制:

 1、try.....catch【....finally】IDEA中使用ctrl+alt+T

 

2、throw、throws主动抛出异常

 自定义异常:自己命名异常名称继承Exception类即可。

 实际应用中的经验总结:

 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

 

标签:02,调用,子类,接口,---,关键字,JavaSE,父类,方法
From: https://www.cnblogs.com/zjjuestc/p/17574049.html

相关文章

  • 【优先队列】【堆排序实现优先队列】[1054. 距离相等的条形码](https://leetcode.cn/p
    【优先队列】【堆排序实现优先队列】1054.距离相等的条形码在一个仓库里,有一排条形码,其中第i个条形码为barcodes[i]。请你重新排列这些条形码,使其中任意两个相邻的条形码不能相等。你可以返回任何满足该要求的答案,此题保证存在答案。示例1:输入:barcodes=[1,1,1,2,2,2]......
  • Codeforces Round 885 (Div. 2) A - C
    A.VikaandHerFriendsProblem-A-Codeforces题意:​ 在\(n*m\)的范围内,\(a\)和她的朋友在追逐游戏,每秒\(a\)和朋友必须从当前位置移到相邻的格子里(上下左右),在这一秒结束时\(a\)不能和朋友在同一格内。现在知道\(a\)和每一个朋友的初始位置,问\(a\)是否会被朋友追上。思路:......
  • 2023.7.23 接雨水
    一个能接雨水的区域,肯定是两边高,中间低,基于这个前提出发就能得到两种做法。动态规划预处理出每个柱子左边最高的柱子,同时也处理出每个柱子右边的最高的柱子。两者取一个min,记做h。那么如果h比当前柱子更高,那么起码当前这个柱子就可以在垂直领域上可以存下h-当前柱子高个单位......
  • map.xml文件报The content of element type "mapper" must match "(cache-ref|cache|r
    出现这个问题 是因为  <insert></insert>  <delete></delete>  <update></update>  <select></select>等标签写的不完整或者写错位置了比如<insert></insert>只写了一个,没有写结尾</insert>或者<insert></insert>中的</in......
  • 基于Java Web的物流快递管理系统的设计与实现-计算机毕业设计源码+LW文档
    选题的背景、意义及研究现状:研究背景随着中国物流业的高速发展,物流管理的重要性不言而喻。而物流管理的效率更是各个物流企业最看重的地方。近些年来,很多公司和企业都实现了自动化办公及信息管理,工作人员只需要在电脑前动动手指,就可完成繁琐的管理操作,极大程度上减轻了工作人员的......
  • JetBrains PhpStorm 2022 (Win&Mac) 中文激活版
    JetBrainsPhpStorm是一款由JetBrains开发的集成开发环境IDE),专门用于PHP语言开发。它提供了丰富的功能和工具,帮开发人员提高效率并编写高质量的PHP代码。以下是JetBrainsPhpStorm的一些常见特点和功能:代码编辑器:JetBrainsPhpStorm提供了强大的代码编辑器,支持语法高亮、代码补、代......
  • 面试类-Java集合 (二)
    MapMap中,毫无疑问,最重要的就是HashMap,面试基本被盘出包浆了,各种问法,一定要好好准备。8.能说一下HashMap的数据结构吗?JDK1.7的数据结构是数组+链表,JDK1.7还有人在用?不会吧……说一下JDK1.8的数据结构吧:JDK1.8的数据结构是数组+链表+红黑树。数据结构示意图如下:    ......
  • Go-GoFiber框架
    简介中文文档Fiber 是一个受到 Express 启发的 Web框架,基于使用 Go 语言编写的最快的HTTP引擎 Fasthttp 构建。旨在通过零内存分配和高性能服务,使快速开发更加简便。安装goget-ugithub.com/gofiber/fiber/v2packagemainimport"github.com/gofiber/fibe......
  • 我的2023暑假青岛3天2晚旅游计划
    我的原暑假出游计划:https://ntopic.cn/p/2023072301/看海玩水优选青岛小朋友们最开心的暑假来了,今年我的2位小朋友最希望去玩的是看海和玩水。这样今年暑假我的出游目标就比较明确了,该计划实施路径了。出游目的地的比较和选择(维度:温度适宜、有海有沙滩):上海本地游:有海有沙滩的......
  • 2023.29 人工智能的发展特征
    今年以来,人工智能又热了起来,发展有以下几个特征:涌现出很多大模型,它们使用大量数据集进行训练,所以称它们为大型语言模型(LLM)。这些模型是生成式的。这意味着他们可以创建新内容,无论是文本、图像、声音、视频、3D对象,甚至是计算机代码。这是相较于旧人工智能模型的一个进步,旧的......