1、.java源文件: 一个以”.java“为后缀的源文件:只能有一个与文件名相同的类,可以包含其他类。...组合技术知识将对象引用置于新类中即可。 缺点:将一个成员对象置于所要构造的类中(组合),在新类中暴露这个成员对象的所有方法(继承),需要折中(代理),可以选择只提供在成员对象中的方法的某个子集。...(基类的构造器总是在导出类的构造过程中被调用) 只有基类的构造器才具有恰当的知识和权限对自己的元素进行初始化,因此必须令所有的构造器都得到调用。...43、JRE与JDK 1)JRE:Java Runtime Environment,Java运行环境,包括JVM和Java程序所需的核心类库等。...任何时候都可用子类型替换父类型; 依赖倒置:面向接口编程(抽象类型可被任何一个子类所替代); 合成聚和复用:优先使用聚合或合成关系复用代码; 接口隔离:一个接口只应描述一种能力,接口应该是高内聚的(小而专一); 迪米特法则:最少知识原则
本文由来源 jackaroo2020,由 javajgs_com 整理编辑,其版权均为 jackaroo2020 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。
更新日志 2022-9-20 杭州 初始版本 整理复习一下Java核心的基础内容。...比如可以分为: 堆 栈 方法区 当然,这里只是列出了一些常用的基本区域,更多的信息可以参考JVM虚拟机相关的知识。...---- Java接口 ---- Java核心API Number/Math类 下表是其一些常用的方法。...这些类都被放在java.nio包及其子包下,并且该包中很多类也以NIO为基础进行了改写。..."hello,server".getBytes()); /*关闭资源*/ outputStream.close(); socket.close(); } 案例扩展-1 在上面基础案例的基础之上
无论是构建复杂且用户体验较高的网页、强大的 Web 应用程序还是响应式的移动界面,前端开发都需要扎实的基础知识,在前端开发领域,基础知识是构建高效、稳定和可维护代码的基石。...无论是刚入行的新手还是经验丰富的老手,扎实的前端基础都是必不可少的,尤其在面试过程中,面试官通常会着重考察应聘者对前端基础知识的掌握程度。...那么本文就来对前端开发中的必备基础知识以及常用基础知识进行全面总结,包括HTML、CSS和JavaScript,以及一些现代前端开发工具和框架。...了解如何定义函数、传递参数、返回值以及使用箭头函数是 JavaScript 编程的核心。...结束语通过上文的分享介绍,想必读者都进一步了解了前端开发相关的基础知识,其实前端开发是一个不断进化的领域,掌握核心基础知识是成为一名优秀前端开发者的前提。
make功能,就算使用java XXX.java命令没有显示编译其他的java文件,它也会查找其他的java文件。...,一种是输入全名java.util.Date today = new java.util.Date(); 也可以使用import java.util....get(index) set(index,ele) remove(index) 删除一个元素,后面的元素向前移动,返回被删除的元素 5.4 对象包装器与自动装箱 比如尖括号内的类型不能是基础类型,所以必须写成...6.4.7 静态内部类 如果使用内部类知识为了把一个类隐藏在另外一个类的内部,并不需要内部类引用外围类对象。可以将内部类声明为static,以便取消产生的引用。...14.5 同步 这个就是操作系统的相关知识了,不赘述 14.5.3 锁对象 有两种机制防止代码块受到并发访问的干扰,一个是synchronized关键字,它自动提供了一个锁以及相关的条件,在需要显式锁的时候是很便利的
参考 Java核心技术 卷I 基础知识 Java: 简单性、面向对象、分布式、健壮性、安全性、体系结构中立、可移植性、解释型、高性能、多线程、动态性。...健壮性 Java的设计目标之一在于是的Java编写的程序具有多方面的可靠性,Java投入了大量的经历进行早期问题检测、后期动态的运行时检测,并消除了容易出错的情况,Java和C++最大的不同在于Java...Java编译器能够检测许多在其他语言中仅在运行时才能够检测出来的问题。 安全性 Java适用于网络、分布式环境,为了达到这个目标,在安全方面投入了很大精力。使用Java可以构建防病毒、防篡改的系统。...Java虚拟机还有一些其他的优点,可以检测指令序列的行为,从而增强其安全性。 可移植性 与C和C++不同,Java规范中没有“依赖具体实现”的地方。...动态性 Java能适应不断发展的环境,库中可以自由地添加新方法和实例变量,对客户端却没有任何影响,在Java中找出运行时类型信息十分简单。
参考:Java核心技术 卷I 基础知识 Unicode和char类型 码点是指与一个编码表中的某个字符对应的代码值。在Unicode标准中,码点采用十六进制书写,并加上前缀U+。...Java中,char类型描述了UTF-16编码中的一个代码单元。 运算符优先级 ? ? 码点与代码单元 Java字符串由char值序列组成。...大数值 如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有用的类:BigInteger和BigDecimal,这两个类可以处理包含任意长度数字序列的数值。
参考:Java核心技术 卷I 基础知识 第七章 异常处理的任务就是将控制权从错误产生的地方转移给能够处理这种情况的错误处理器。...Error类层次结构描述了Java运行时系统的内部错误和资源耗尽错误。应用程序不应该抛出这种类型的对象。如果出现了这样的内部错误,除了通告给用户,并尽力使程序安全地终止之外,再也无能为力了。...在设计Java程序时,需要关注Exception层次结构。这个层次结构又分解为两个分支。一个分支派生于RuntimeException,另一个分支包含其他异常。...访问null指针 不是派生于RuntimeException的异常包括: 试图在文件尾部后面读取数据 试图打开一个不存在的文件 试图根据给定的字符串查找Class对象,而这个字符串表示的类并不存在 Java...例如a[-1]=0会抛出一个ArrayIndexOutOfBoundsException这样的非受查异常 (4)Java虚拟机和运行时库出现的内部错误 总之,一个方法必须声明所有可能抛出的受查异常,而非受查异常要么不可控制
银行的核心系统. 千亿级数据仓库. 分析PB级数据,为企业提供高效、稳健的实时数据洞察。 采用类似阿里巴巴大数据数仓设计的分层架构思想,使用主流的实时仓库技术Flink、Druid、Kafka。...注意: 有了继承以后, 我们在定义一个类的时候, 可以在一个已经存在的类的基础上, 还可以定义自己的新成员. 7.2 格式 在Java中, 可以通过extends关键字来实现类与类的继承, 具体格式如下...不同的是, 基础班老师讲JavaSE, 就业班老师讲解JavaEE....请用所学, 模拟该知识点. 10.5.2 分析 定义父类Teacher, 属性: 姓名和年龄, 行为: 讲课(因为不同老师讲课内容不同, 所以该方法是抽象的)....请用所学, 模拟该知识. 12.2 参考代码 略 13. 包 13.1 简述层 包(package)就是文件夹, 用来对类进行分类管理的. 例如: 学生的增加, 删除, 修改, 查询.
参考:Java核心技术 卷I 基础知识 第十四章 多进程与多线程有哪些区别呢?本质的区别在于每个进程拥有自己的一整套变量,而线程则共享数据。...在许多情况下可以使用java.util.concurrent包中的一种机制,他会为你处理所有的加锁。
参考:Java核心技术 卷I 基础知识 第八章 泛型程序设计意味着编写的代码可以被很多不同类型的对象所重用。 泛型使用类型参数,使得代码有更好的可读性。...在Java SE7及以后的版本中,构造函数中可以省略泛型类型,省略的类型可以从变量的类型推断得出。 类型参数的魅力在于:使得程序具有更好的可读性和安全性。 通配符类型。...Java泛型转换的事实: 虚拟机中没有泛型,只有普通的类和方法。 所有类型参数都用它们的限定类型替换。 桥方法被合成来保持多态。 为保持类型安全性,必要时插入强制类型转换。...使用Java泛型时需要考虑的一些限制: 不能用基本类型实例化类型参数,比如,不能使用double,只能使用Double 运行时类型查询只适用于原始类型。
参考:Java核心技术 卷I 基础知识 类之间最常见的关系有:依赖、聚合、继承 依赖即“use-a”关系,是一种最明显的,最常见的关系。...Java中方法参数的使用情况: 一个方法不能修改一个基本数据类型的参数(数值型或布尔型) 一个方法可以改变一个对象参数的状态 一个方法不能让对象参数引用一个新的对象 静态导入: import static...java.lang.System.*; 在源文件顶部,添加一条指令,就可以使用System.类的静态方法和静态域,而不必加类名前缀。
参考:Java核心技术 卷I 基础知识 一个对象变量可以指示多种实际类型的现象被称为多态。在运行时能够自动地选择调用哪个方法的现象被称为动态绑定。
让我们从执行者变成了指挥者. 1.2.4 总结 面向对象思想是一种编程思想, 它是基于面向过程的, 强调的是以对象为基础完成各种操作. 总结来讲, 万物皆对象. 2....银行的核心系统. 千亿级数据仓库. 分析PB级数据,为企业提供高效、稳健的实时数据洞察。 采用类似阿里巴巴大数据数仓设计的分层架构思想,使用主流的实时仓库技术Flink、Druid、Kafka。...属性在Java中被称之为成员变量. 行为. 行为指的就是事物能够做什么. 行为在Java中被称之为成员方法. 例如: 学生 属性: 姓名, 年龄, 性别.... 行为: 学习, 吃饭, 睡觉......问题三: Java语言是如何表示现实世界的事物呢? 在Java语言中, 是通过类来体现事物的. Java语言最基本的单位是类, 它是一个抽象的概念, 看不见, 摸不着....s.study(); s.eat(); } } 6.4.4 总结 Java中, 使用变量遵循就近原则, 局部位置有就使用, 没有就去本类的成员位置找, 有就使用, 没有就报错.
参考:Java核心技术 卷I 基础知识 接口,主要用来描述类具有什么功能,而并不给出每个功能的具体实现。一个类可以实现一个或多个接口,并在需要接口的地方,随时使用实现了相应接口的对象。...Java规则如下: (1)超类有限。如果超类提供了一个具体方法,同名且有相同的参数类型的默认方法会被忽略。 (2)接口冲突。...作为Java安全模型的一部分,对于系统类和从因特网上下载下来的类,可以使用不同的类加载器。 一个Class对象数组,每个元素都是需要实现的接口。
参考:Java核心技术 卷I 基础知识 反射库提供了一个非常丰富且精心设计的工具集,以便编写能够动态操纵Java代码的程序。...这项功能被大量地应用与JavaBeans中,它是Java组件的体系结构。 能够分析类能力的程序成为反射。...在程序运行期间,Java运行时系统始终为所有的对象维护一个被称为运行时的类型标识。这个信息跟踪着每个对象所属的类。虚拟机利用运行时类型信息选择相应的方法执行。 异常有两种类型:未检查异常和已检查异常。
Java 核心技术 3.1. 反射机制 3.2. 异常 3.3. 多线程 3.4. 文件与 I\O 流 ---- 3. Java 核心技术 3.1....反射机制 JAVA 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为 java.../java-programming/exceptions-java 在 Java 中,所有的异常都有一个共同的祖先 java.lang 包中的 Throwable 类。...Java 线程在运行的生命周期中的指定时刻只可能处于下面 6 种不同状态的其中一个状态(图源《Java 并发编程艺术》4.1.4 节)。...进入等待状态的线程需要依靠其他线程的通知才能够返回到运行状态,而 TIME_WAITING(超时等待) 状态相当于在等待状态的基础上增加了超时限制,比如通过 sleep(long millis)方法或
基础12-7 java中,如果声明使用的是包.类的方式,则不需要导包,如 PrintWriter out = new PrintWriter( new java.io.OutputStreamWriter...知识点:成员变量有默认值,如果String为null,局部变量必须初始化。这里是局部变量 CountDownLatch 允许一个线程或多个线程等待特定情况,同步完成线程中其他任务。...废江博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 转载请注明原文链接:基础java知识复习
重写doGet/doPost方法 在web.xml中注册servlet 17.3 Servlet生命周期 init:仅执行一次,负责装载servlet时初始化servlet对象 service:核心方法...这一思想表现为对继承机制的约束规范,只有子类能够替换其基类时,才能够保证系统在运行期内识别子类,这是保证继承复用的基础。...多用组合 针对接口编程 不针对实现编程 为交互对象之间的松耦合设计而努力 类应该对扩展开发 对修改封闭(开闭OCP原则) 依赖抽象,不要依赖于具体类(依赖倒置DIP原则) 密友原则:只和朋友交谈(最少知识原则...Bootstrap ClassLoader(引导类加载器) 负责加载java基础类,主要是 %JRE_HOME/lib/目录下的rt.jar、resources.jar、charsets.jar等 Extension...38.Java语言特性 Java致力于检查程序在编译和运行时的错误 Java虚拟机实现了跨平台接口 类型检查帮助检查出许多开发早期出现的错误 Java自己操纵内存减少了内存出错的可能性 Java还实现了真数组
{/collapse-item} {collapse-item label="instanceof "} instanceof 严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例...Java的内部类分为好几种,通常情况用得不多,但也需要了解它们是如何使用的。...在Java程序中,出现这种情况,编译器会报错。...在Java中,使用关键字 new 来创建一个新的对象。创建对象需要以下三步: 声明:声明一个对象,包括对象名称和对象类型。 实例化:使用关键字 new 来创建一个对象。...{/collapse-item} {collapse-item label="非访问修饰符"} 为了实现一些其他的功能,Java 也提供了许多非访问修饰符。
领取专属 10元无门槛券
手把手带您无忧上云