JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environment 的简称,java 运行环境,为 java 的运行提供了所需环境。 具体来说 JDK 其实包含了 JRE,同时还包含了编译 java 源码的编译器 javac,还包含了很多 java 程序调试和分析的工具。简单来说:如果你需要运行 java 程序,只需安装 JRE 就可以了,如果你需要编写 j
其中:ArrayList 和 Vector 这两个类都实现了List接口 A instanceof B 的作用: 1、 对象A是否为B类的对象:objA instanceof B.class 2、A对象是否实现了B接口 我们平时经常用到以下代码:接口可被new,what? 高斯林想要爬进棺材板了!
小编之前写过一期Java学习路线总结❤️搬砖工逆袭Java架构师❤️(全网最强,建议收藏)
在 java 中,这里的 3.4 默认是双精度数。如果将双精度型(double)赋值给浮点型(float)属于下转型(down-casting,也称为窄化)会造成精度损失,因此需要强制类型转换 float f = (float) 3.4 或者写成 float f = 3.4F。
类,抽象类,接口的综合小练习 /* 教练和运动员案例(学生分析然后讲解) 乒乓球运动员和篮球运动员。 乒乓球教练和篮球教练。 为了出国交流,跟乒乓球相关的人员都需要学习英语。 请用所学知识: 分析,这个案例中有哪些抽象类,哪些接口,哪些具体类。 整个分析过程,我是通过画图讲解的。 */ //定义一个说英语的接口 interface SpeakEnglish { //说英语 public abstract void speak(); } //定义人的抽象类 abstract class P
Java词法树(语法树)这种树形结构是Java源码的一种抽象表示,它以图形化的方式反映出代码的语法结构,从而帮助开发者更好地理解和解析程序的语义。
一、选择题:(每题1分,共65分,包含复选题和单选题,复选题已做标记,其余为单选题)
因为JAVA程序编译后生成的字节码文件(class文件)是跨平台的。JVM不是跨平台,在不同的操作系统上开发JAVA程序,必须安装该操作系统版本的JVM。
模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行
java基础学习_GUI_如何让Netbeans的东西Eclipse能访问、GUI(图形用户接口)_day25总结
10.01_面向对象(package关键字的概述及作用) A:为什么要有包 将字节码(.class)进行分类存放 B:包的概述 C:包的作用 10.02_面向对象(包的定义及注意事项) A:定义包的格式 package 包名; 多级包用.分开即可 B:定义包的注意事项 A:package语句必须是程序的第一条可执行的代码 B:package语句在一个java文件中只能有一个 C:如果没有package,默认表示无包名 C:案例演示 包的定义及注意事项 10.03_面向对象(带包的类编译和运行) A:
在空对象模式(Null Object Pattern)中,一个空对象取代 NULL 对象实例的检查
声明:本文为原创,作者为 对弈,转载时请保留本声明及附带文章链接:http://www.duiyi.xyz/c%e5%ae%9e%e7%8e%b0%e9%9b%b7%e9%9c%86%e6%88%98%e6%9c%ba-17/
switch——不能做switch参数的数据类型是float double boolean long;
============================================================================= ============================================================================= 涉及的知识点有: 1:方法的形式参数和方法的返回值的问题(理解) (1)方法的形式参数为引用数据类型 (2)方法的返回值类型为引用数据类型 (3)链式编程 2:包(理解) (1)包其实就是文件夹。 (2)包的作用 (3)包的定义(掌握) (4)包的注意事项(掌握) (5)带包的编译和运行 (6)Java中不同包下的类与类之间的访问 3:导包(掌握) (1)导包的原因 (2)导包的格式 (3)package,import,class有没有顺序关系呢? 4:权限修饰符(掌握) (1)权限修饰符的权限测试 (2)这四种权限修饰符在任意时刻只能出现一种。 5:类及其组成所使用的常见修饰符(理解) (1)修饰符的分类 (2)常见的类及其组成所使用的修饰符 1.修饰类的 2.修饰成员变量的 3.修饰构造方法的 4.修饰成员方法的 (3)另外比较常见的修饰符组合规则 6:内部类(理解) (1)把类定义在另一个类的内部,该类就被称为内部类。 (2)内部类的访问特点 (3)内部类的分类(内部类的位置) (4)成员内部类 (5)成员内部类的面试题(填空) (6)局部内部类 (7)匿名内部类(很重要掌握) (8)匿名内部类在开发中的使用 (9)匿名内部类的面试题(补齐代码) ============================================================================= ============================================================================= 1:方法的形式参数和方法的返回值的问题(理解) (1)方法的形式参数为引用数据类型: 1.方法的形式参数为类名时:需要该类的对象。(匿名对象的时候已经讲过了) 2.方法的形式参数为抽象类名时:需要该抽象类的子类对象。 3.方法的形式参数为接口名时:需要该接口的实现类对象。 (2)方法的返回值类型为引用数据类型: 1.方法的返回值类型为类名时:返回的是该类的对象。 2.方法的返回值类型为抽象类名时:返回的是该类的子类对象。 3.方法的返回值类型为接口名时:返回的是该接口的实现类的对象。 (3)链式编程 对象.方法1().方法2().方法3(). ……… .方法n(); 这种用法: 其实 在方法1()调用完毕后,应该一个对象; 方法2()调用完毕后,应该返回一个对象。 方法3()调用完毕后,应该返回一个对象。 ………… 方法n()调用完毕后,返回的可能是对象,也可以不是对象。 ----------------------------------------------------------------------------- 2:包(理解) (1)包其实就是文件夹。 (2)包的作用: A:区分同名的类(即把具有相同类名的类放到不同的包中)。 B:对类进行分类管理。 a:包按照功能分 cn.itcast.add 增加功能的包 AddStudent 增加学生的类 AddTeacher 增加老师的类 cn.itcast.delete 删除功能的包 DeleteStudent 删除学生的类 DeleteTeacher 删除老师的类 cn.itcast.update 修改功能的包 UpdateStudent 修改学生的类 UpdateTeacher 修改老师的类 cn.itcast.find 查找功能的包 FindStudent 查找学生的类 FindTeacher 查找老师
目前市面上的面试题存在两大问题:第一,题目太旧好久没有更新了,还都停留在 2010 年之前的状态;第二,近几年 JDK 更新和发布都很快,Java 的用法也变了不少,加上 Java 技术栈也加入了很多新的框架,比如 Spring Boot、Spring Cloud 等,但类似的面试题却极少。
发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~
桥接模式(Bridge Pattern)是用于把抽象化与实现化解耦,使得二者可以独立变化
一个简单的java程序如下: class Sakura { public static void main(String[] arges) { system.out.println("Hello World"); system.out.print("hahaha"); } } 1.主函数的出现可以保证一个类的独立运行的能力 2.在java程序中,pirnt与println的区别在于println输出一行之后是否再打印一个回车换行,而print则没有! 我们以后缀名为123.jav
可以到.java文件通过Java编译器(javac.exe)编译成为.class文件。这个.class文件就是字节码文件,它是一种提供给JVM解释执行的文件。每一个平台的都相同,由于通过不同的Java解释器解释形成不同的机器码文件,使操作系统执行。
首先属性表是用来补充信息用的,比如他可以继续补充类文件的信息、就是我们上面最后的那一段内容,还有他可以补充字段的信息,补充方法的信息。所以它出现的位置不同,补充的额外信息也会不一样。
1、关于常用包 java.long 基础包:String Math Integer... java.util 工具包:Collection Map Date java.sql 数据库相关:Conection java.io 输入输出:OutputStream File 2、JDK、JRE、JVMA的区别 JDK:是java开发的工具箱,包含jre,还包含将java文件编译为class文件的javac工具类(编译器),除此之外还包括java原生的API;包含J2SE(标准版)、J2EE(企业版)、J2ME(用
JDK:是java开发的工具箱,包含jre,还包含将java文件编译为class文件的javac工具类(编译器),除此之外还包括java原生的API;包含J2SE(标准版)、J2EE(企业版)、J2ME(用于移动设备)
正所谓万丈高楼平地起,有了扎实的基础才能进阶更深奥的课程,才能让你后面的走得更轻松,学Java亦是如此!所以千万不能忽略基础的重要性,下面一起来温习一下那些容易忽略、容易混淆以及比较重要的Java基础。
开发的java源代码,通过javac编译成为平台无关的字节码文件(class),然后通过JVM的解释器将字节码解释成对应的机器码
--------------------------------------------------------------------------
1.整型:byte(1个字节)、short(2个字节)、int(4个字节) 、long(8个字节)
本教程是系列教程,包含 Java 基础,JVM,容器,多线程,反射,异常,网络,对象拷贝,JavaWeb,设计模式,Spring-Spring MVC,Spring Boot / Spring Cloud,Mybatis / Hibernate,Kafka,RocketMQ,Zookeeper,MySQL,Redis,Elasticsearch,Lucene
在之前的文章「 Java 中 String 类为什么要设计成不可变的?」中对 String 的特性已经作了总结。这篇文章主要介绍另外两个常用的类 StringBuilder 和 StringBuffer 的特性。
Java是面向对象的编程语言,不同于C语言是面向过程的。对于面向对象和面向过程的区别,举一个简单的例子说明一下(我们以洗衣机洗衣服为例):
最常被问到。final修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。
第一节 JAVA概念与JDK的安装 1.1JAVA语言的特点: 1.1.1简单性 1.1.2面向对象:封装、继承、多态等; 1.1.3分布性:有很强的通信库;可处理TCP/IP等协议;可通过URL访问网络资源;分布计算; 1.1.4健壮性 1.1.5安全性 1.1.6体系结构中立 1.1.7解释执行 1.1.8可移植性 1.1.9高效性 1.1.10多线程 1.1.11动态性:可在库中自由加入新方法和实例变量,适应不断变化的环境; 1.2JAVA的三个版本: 1.2.1 J2SE:JAVA标准版; 1.2.2 J2EE:JAVA企业版;1.2.3 J2ME:JAVA微缩版; 1.3 相关基本概念:JDK、SDK、JRE、JVM、 1.4 JDK的安装和环境变量的设置; 1.5 一个简单的Hello World简单示例; 1.6 javac.exe、java.exe的作用 1.6.3 基本输入输出应用
JDK:Java Development Kit Java开发工具包【开发Java程序用】
final是最终、不可修改的意思, 在Java中它可以修饰非抽象类,非抽象方法和变量。但是需要注意的是:构造方法不能使用final修饰,因为构造方法不能够被继承。下面,咱们就来一一看看吧!
java 文件通过javac编译成class文件,这种代码我们称之为字节码(中间码), 由JVM去加载字节码这个过程。
之前已经更新了第一波 31 道 Java 核心面试题,没有看到的小伙伴可以点击链接跳转过去拜读一下,然后再来看第二波,我相信你一定会有一种如获至宝的感觉。
1、说说&和&&的区别 &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。 &&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerEx
所谓”编译“,通俗来讲就是把我们写的代码“翻译“成机器可以读懂的机器码。而编译器就是做这个翻译工作的。
java新手知识点归纳-java基础部分 一. Java的运行(基础必备) 这条可能出看很简单,java程序的运行谁不会呢?不过很多时候, 我们只是单纯通过IDE去执行java程序,底层IDE又是如何执行java程序呢?很多人并不了解。 这个知识点是最最基本的java开发者需要掌握的,初学java,第一个肯定是教你如何在命令行中执行java程序,但是很多人一旦把java学完了,IDE用上了,就把这个都忘了。为什么强调要知道这个呢,知道了java最纯粹的启动方式之后,你才能在启动出问题的时候,去分析当时启
从前面 文章 中我们可以了解到,javac 的三个步骤中,程序员唯一能干预的就是注解处理器部分,注解处理器类似于编译器的插件,在这些插件里面,可以读取、修改、添加抽象语法树中的任意元素。因此,只要有足够的创意,程序员可以通过自定义插入式注解处理器来实现许多原本只能在编码中完成的事情。我们常见的 Lombok、Hibernate Validator 等都是基于自定义插入式注解器来实现的。
编译:在D盘下有Person_Test.java ,在D盘下打开dos命令行执行 javac -d . Person_Test.java 命令就会生成一个D:/com/heima/Person_Test.class
老哥们,本期文章为大家奉上Java开发岗面试题--基础篇(一),希望对正在找工作的你有所帮助。话不多说,干货走起!!
1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre。
从面试题作为切入点提升大家的 Java 内功,所谓根基不牢,地动山摇。只有扎实的基础,才是写出写好代码。
类的加载机制是指把编译后的.class类文件的二进制数据读取到内存中,并为之创建一个java.lang.Class对象,用来封装类在元数据空间的数据结构。
工作了几年之后才发现,越是资深的JAVA工程师,应该越注重java基础知识,比如,成天和SpringBOOT、maven打交道,经常用apache提供的StringUtil类操作字符串,还有必要关心“String类为什么是final”这样的问题,这是肯定的哈。把基础夯实了,才不至于空中楼阁。
说起来,在大学里面我学过的编程语言只有c++和java。这其中c++是作为必修课学的,而java是作为选修课学的。至于后面的c、汇编、python、js这些语言,那都是工作了之后才学的。
如题所示,当进行s=s+i的时候,s在前和s在后输出的结果是相反的。空字符串在前时是正着输出,空字符串在后是逆着输出
最近狂写了一个月的Spark,接手的项目里的代码以Scala语言为主,Java为辅,两种语言混合编码。发现要深入地掌握Scala,很有必要学习一下Java,以便理解JVM语言的编译执行和打包机制,并通过对比加深对Scala的静态语言和脚本语言双重特性的理解。
领取专属 10元无门槛券
手把手带您无忧上云