![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
Java基础
happy life 2022
这个作者很懒,什么都没留下…
展开
-
Java中abstract关键字的使用
一、abstract介绍abstract:抽象的。abstract可以用来修饰的结构:类、方法。二、abstract修饰类(抽象类)此类不能实例化。抽象类中一定有构造器,便于子类实例化时调用(涉及:子类对象实例化的全过程)。开发中,都会提供抽象类的子类,让子类对象实例化,完成相关的操作。三、abstract修饰方法(抽象方法)抽象方法只有方法的声明,没有方法体。包含抽象方法的类,一定是一个抽象类;反之,抽象类中可以没有抽象方法的。若子类重写了父类中的所有的抽象方法后,此子类方可原创 2021-05-15 19:31:10 · 604 阅读 · 0 评论 -
Java中代码块的使用
一、代码块介绍代码块的作用:用来初始化类、对象。代码块如果有修饰的话,只能使用static。分为静态代码块和非静态代码块。二、静态代码块可以用来初始化类的信息。内部可以有输出语句。静态代码块内只能调用静态的属性、静态的方法,不能调用非静态的结构。随着类的加载而执行,而且只执行一次。如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行。静态代码块的执行要优先于非静态代码块的执行。三、非静态代码块可以在创建对象时,对对象的属性等进行初始化。内部可以有输出语句。非静态代原创 2021-05-15 10:12:27 · 96 阅读 · 0 评论 -
Java中final关键字的使用
一、final关键字final:最终的。final可以用来修饰的结构:类、方法、变量。static final 用来修饰属性:全局常量。二、final修饰类此类不能被其他类所继承。比如:String类、System类、StringBuffer类。三、final修饰方法表明此方法不可以被重写。比如:Object类中getClass()。四、final修饰变量此时的“变量"就称为是一个常量。final修饰属性,可以考虑赋值的位置有:显式初始化、代码块中初始化、构造器中初始化原创 2021-05-14 18:59:52 · 598 阅读 · 0 评论 -
Java中属性的赋值
一、属性可以赋值的位置①默认初始化。②显式初始化。③构造器中初始化。④有了对象以后,可以通过"对象.属性"或"对象.方法"的方式,进行赋值。⑤在代码块中赋值。二、执行的先后顺序① - ② / ⑤ - ③ - ④参考:尚硅谷_宋红康_Java基础...原创 2021-05-14 18:30:18 · 287 阅读 · 0 评论 -
Java中main()方法的使用
一、main()方法的使用说明main()方法作为程序的入口。main()方法也是一个普通的静态方法。main()方法可以作为我们与控制台交互的方式(之前:使用Scanner)。二、main()方法使用举例MainDemo.javapublic class MainDemo { public static void main(String[] args) { for(int i = 0;i < args.length;i++){ int num = Integer.p原创 2021-05-14 17:07:35 · 1111 阅读 · 0 评论 -
Java中的文档注释
文档注释(Java特有)/**@author 指定java程序的作者@version 指定源文件的版本*/注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。操作方式参考:尚硅谷_宋红康_Java基础...原创 2021-05-14 16:37:33 · 102 阅读 · 0 评论 -
JDK、JRE、JVM的关系
一、JVM—Java虚拟机JVM的介绍JVM与Java 程序跨平台性的关系二、JDK,JRE三、JDK、JRE、JVM的关系参考:尚硅谷_宋红康_Java基础原创 2021-05-14 16:28:26 · 49 阅读 · 0 评论 -
单例 (Singleton)设计模式
一、单例设计模式介绍设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、以及解决问题的思考方式。所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例。二、单例设计模式的实现饿汉式坏处:对象加载时间过长。好处:饿汉式是线程安全的。public class SingletonTest1 { public static void main(String[] args) { Bank bank1 = Bank.getInstance原创 2021-05-12 19:37:36 · 50 阅读 · 0 评论 -
Java中static关键字的使用
一、static介绍static:静态的。可以用来修饰:属性、方法、代码块、内部类。二、使用static修饰属性:静态变量(或类变量)属性,按是否使用static修饰,又分为:静态属性vs非静态属性(实例变量)。① 实例变量:我们创建了类的多个对象,每个对象都独立的拥有一套类中的非静态属性。当修改其中一个对象中的非静态属性时,不会导致其他对象中同样的属性值的修改。② 静态变量:我们创建了类的多个对象,多个对象共享同一个静态变量。当通过某一个对象修改静态变量时,会导致其他对象调用此静态变量原创 2021-05-12 18:47:47 · 54 阅读 · 0 评论 -
Java中包装类(Wrapper)的使用
一、包装类与基本数据类型1、java提供了8种基本数据类型对应的包装类,使得基本数据类型的变量具有类的特征。2、有了类的特点,就可以调用类中的方法,Java才是真正的面向对象。二、基本数据类型、包装类、String三者之间的相互转换包装类—>基本数据类型:调用包装类Xxx的xxxValue()Float f1 = new Float(12.3);float f2 = f1.floatValue();基本数据类型 —>包装类:调用包装类的构造器int num = 10;原创 2021-05-11 17:52:32 · 313 阅读 · 0 评论 -
Java中的JUnit单元测试
一、步骤1、选中当前工程 - 右键选择:build path->add libraries->JUnit 4->下一步。2、创建Java类,进行单元测试。此时的Java类要求:① 此类是public的 ②此类提供公共的无参的构造器。3、此类中声明单元测试方法。此时的单元测试方法:方法的权限是public,没有返回值,没有形参。4、此单元测试方法上需要声明注解:@Test,并在单元测试类中导入:import org.junit.Test;5、声明好单元测试方法以后,就可以在方法体原创 2021-05-11 16:09:23 · 70 阅读 · 0 评论 -
Java中toString()的使用
1、当我们输出一个对象的引用时,实际上就是调用当前对象的toString()。2、Object类中toString()的定义:public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCode());}3、像String、Date、File、包装类等都重写了Object类中的toString()方法,使得在调用对象的toString()时,返回"实体内容"信息。4、自定义类也可以原创 2021-05-11 15:47:28 · 1809 阅读 · 0 评论 -
Java中==和equals()的区别
一、== 运算符的使用1、是一个运算符。2、可以使用在基本数据类型变量和引用数据类型变量中。3、如果比较的是基本数据类型变量:比较两个变量保存的数据是否相等。(不一定类型要相同)。4、如果比较的是引用数据类型变量:比较两个对象的地址值是否相同.即两个引用是否指向同一个对象实体。5、使用时,必须保证符号左右两边的变量类型一致。二、equals()方法的使用1、是一个方法,而非运算符。2、只能适用于引用数据类型。3、Object类中equals()的定义:public boolean equ原创 2021-05-10 19:56:29 · 75 阅读 · 0 评论 -
java.lang.Object类
Object类是所有Java类的根父类。如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类 。Object类中的功能(属性、方法)就具有通用性。1、属性:无2、方法:equals() 、 toString() 、getClass() 、hashCode() 、 clone()、finalize()、wait() 、 notify()、notifyAll()Object类只声明了一个空参的构造器。参考:尚硅谷_宋红康_Java基础...原创 2021-05-10 19:30:49 · 178 阅读 · 0 评论 -
Java中instanceof关键字的使用
一、instanceof关键字a instanceof A:判断对象a是否是类A的实例。如果是,返回true;如果不是,返回false。使用情境:为了避免在向下转型时出现ClassCastException的异常,我们在向下转型之前,先进行instanceof的判断,一旦返回true,就进行向下转型。如果返回false,不进行向下转型。如果 a instanceof A返回true,则 a instanceof B也返回true。其中,类B是类A的父类。二、向下转型与向上转型参考:尚硅谷_宋原创 2021-05-10 18:46:56 · 84 阅读 · 0 评论 -
Java中的重载与重写
一、方法的重载(overload)1、定义:在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。2、两同一不同:同一个类、相同方法名;参数列表不同,参数个数不同,参数类型不同。3、举例:Arrays类中重载的sort() 。4、判断是否是重载:跟方法的权限修饰符、返回值类型、形参变量名、方法体都没有关系。5、在通过对象调用方法时,如何确定某一个指定的方法:方法名 —> 参数列表。二、方法的重写(override / overwrite)1、重写:子类继承父类原创 2021-05-09 19:57:49 · 240 阅读 · 0 评论 -
Java中的多态性
一、多态性理解多态性:可以理解为一个事物的多种形态。何为多态性:对象的多态性:父类的引用指向子类的对象(或子类的对象赋给父类的引用)。多态的使用:虚拟方法调用①有了对象的多态性以后,我们在编译期,只能调用父类中声明的方法,但在运行期,我们实际执行的是子类重写父类的方法。②总结:编译,看左边;运行,看右边。多态性的使用前提: ① 类的继承关系 ② 方法的重写。对象的多态性,只适用于方法,不适用于属性(编译和运行都看左边)。二、虚拟方法调用正常的方法调用Person e = ne原创 2021-05-09 19:43:43 · 179 阅读 · 1 评论 -
Java中子类对象实例化的全过程
从结果上看:子类继承父类以后,就获取了父类中声明的属性或方法。创建子类的对象,在堆空间中,就会加载所有父类中声明的属性。从过程上来看:当我们通过子类的构造器创建子类对象时,我们一定会直接或间接的调用其父类的构造器,进而调用父类的父类的构造器,…直到调用了java.lang.Object类中空参的构造器为止。正因为加载过所有的父类的结构,所以才可以看到内存中有父类中的结构,子类对象才可以考虑进行调用。明确:虽然创建子类对象时,调用了父类的构造器,但是自始至终就创建过一个对象,即为new的子类对象。参.原创 2021-05-09 19:03:43 · 72 阅读 · 0 评论 -
Java中super关键字的使用
一、super关键字super理解为:父类的super可以用来调用:属性、方法、构造器二、super调用属性和方法我们可以在子类的方法或构造器中。通过使用"super.属性"或"super.方法"的方式,显式的调用父类中声明的属性或方法。但是,通常情况下,我们习惯省略"super."。当子类和父类中定义了同名的属性时,我们要想在子类中调用父类中声明的属性,则必须显式的使用"super.属性"的方式,表明调用的是父类中声明的属性。当子类重写了父类中的方法以后,我们想在子类的方法中调用父类中被原创 2021-05-09 18:49:21 · 7973 阅读 · 2 评论 -
进制间的转化
一、关于进制所有数字在计算机底层都以二进制形式存在。对于整数,有四种表示方式:1、二进制(binary):0-1 ,满2进1,以0b或0B开头。2、十进制(decimal):0-9 ,满10进1。3、八进制(octal):0-7 ,满8进1,以数字0开头表示。4、十六进制(hex):0-9及A-F,满16进1,以0x或0X开头表示。此处的A-F不区分大小写。如:0x21AF +1= 0X21B0。二、二进制Java整数常量默认是int类型,当用二进制定义整数时,其第32位是符号位;当是原创 2021-05-09 11:03:33 · 134 阅读 · 1 评论 -
Eclipse中debug功能常用操作
step into 跳入(f5):进入当前行所调用的方法中。step over 跳过(f6):执行完当前行的语句,进入下一行。step return 跳回(f7):执行完当前行所在的方法,进入下一行。drop to frame:回到当前行所在方法的第一行。resume 恢复:执行完当前行所在断点的所有代码,进入下一个断点,如果没有就结束。Terminate 终止:停止 JVM, 后面的程序不会再执行。参考:尚硅谷_宋红康_Java基础...原创 2021-05-08 19:09:44 · 248 阅读 · 0 评论 -
JavaBean
一、JavaBean解释JavaBean是一种Java语言写成的可重用组件。所谓javaBean,是指符合如下标准的Java类:1、类是公共的2、有一个无参的公共的构造器3、有属性,且有对应的get、set方法用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用Java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能原创 2021-05-08 18:39:00 · 139 阅读 · 0 评论 -
Java中的继承性
一、继承性的好处1、减少了代码的冗余,提高了代码的复用性。2、便于功能的扩展。3、为之后多态性的使用,提供了前提。二、继承性的格式class A extends B{}A:子类、派生类、subclassB:父类、超类、基类、superclass1、一旦子类A继承父类B以后,子类A中就获取了父类B中声明的所有的属性和方法。特别的,父类中声明为private的属性或方法,子类继承父类以后,仍然认为获取了父类中私有的结构。只有因为封装性的影响,使得子类不能直接调用父类的结构而已。2、类继承原创 2021-05-08 10:09:08 · 371 阅读 · 0 评论 -
Eclipse中常用的快捷键
补全代码的声明:alt + /快速修复: ctrl + 1批量导包:ctrl + shift + o使用单行注释:ctrl + /使用多行注释: ctrl + shift + /取消多行注释:ctrl + shift + \复制指定行的代码:ctrl + alt + down 或 ctrl + alt + up删除指定行的代码:ctrl + d上下移动代码:alt + up 或 alt + down切换到下一行代码空位:shift + enter切换到上一行代码空位:ctrl + s.原创 2021-05-07 10:29:11 · 117 阅读 · 0 评论 -
Java中的构造器
一、构造器的作用1、创建对象2、初始化对象的信息二、构造器的使用1、如果没显式的定义类的构造器的话,则系统默认提供一个空参的构造器2、定义构造器的格式:权限修饰符 类名(形参列表){}3、一个类中定义的多个构造器,彼此构成重载4、一旦我们显式的定义了类的构造器之后,系统就不再提供默认的空参构造器5、一个类中,至少会有一个构造器。...原创 2021-05-06 19:21:42 · 61 阅读 · 0 评论 -
MVC设计模式
参考:尚硅谷_宋红康_Java基础原创 2021-05-06 18:59:33 · 61 阅读 · 0 评论 -
JDK中主要的包介绍
参考:尚硅谷_宋红康_Java基础原创 2021-05-06 18:50:29 · 62 阅读 · 0 评论 -
Java中package关键字和import关键字的使用
一、package关键字的使用为了更好的实现项目中类的管理,提供包的概念。使用package声明类或接口所属的包,声明在源文件的首行。包,属于标识符,遵循标识符的命名规则、规范(xxxyyyzzz)、“见名知意”。每"."一次,就代表一层文件目录。同一个包下,不能命名同名的接口、类;不同的包下,可以命名同名的接口、类。二、import关键字的使用import:导入。在源文件中显式的使用import结构导入指定包下的类、接口。声明在包的声明和类的声明之间。如果需要导入多个结构,则并列原创 2021-05-06 18:45:10 · 899 阅读 · 0 评论 -
UML类图
参考:尚硅谷_宋红康_Java基础原创 2021-05-06 18:02:58 · 52 阅读 · 0 评论 -
Java中this关键字的使用
this理解为:当前对象或当前正在创建的对象this修饰属性和方法①在类的方法中,我们可以使用"this.属性"或"this.方法"的方式,调用当前对象属性或方法。但是,通常情况下,我们都选择省略"this."。特殊情况下,如果方法的形参和类的属性同名时,我们必须显式的使用"this.变量"的方式,表明此变量是属性,而非形参。②在类的构造器中,我们可以使用"this.属性"或"this.方法"的方式,调用当前正在创建的对象属性或方法。但是,通常情况下,我们都选择省略"this."。特殊情况下,如果构原创 2021-05-06 17:02:01 · 112 阅读 · 0 评论 -
Java中的名称命名规范
包名:多单词组成时所有字母都小写:xxxyyyzzz类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ...原创 2021-05-05 22:28:34 · 55 阅读 · 0 评论 -
Java中逻辑运算符& 与 &&以及| 与 ||
一、区分& 与 &&相同点1、& 与 && 的运算结果相同2、当符号左边是true时,二者都会执行符号右边的运算不同点当符号左边是false时,&继续执行符号右边的运算。&&不再执行符号右边的运算。开发中,推荐使用&&二、区分| 与 ||相同点1、| 与 || 的运算结果相同2、当符号左边是false时,二者都会执行符号右边的运算不同点当符号左边是true时,|继续执行符号右边的运算,而原创 2021-05-05 19:26:20 · 279 阅读 · 0 评论 -
Java中的位运算符
一、位运算符的种类二、位运算符需要注意的细节原创 2021-05-05 19:10:53 · 82 阅读 · 0 评论 -
Java中四种访问权限修饰符
一、 Java规定的4种权限(从小到大排列):private、缺省、protected 、public二、 具体的修饰范围:三、权限修饰符可用来修饰的结构说明:4种权限都可以用来修饰类的内部结构:属性、方法、构造器、内部类修饰类的话,只能使用:缺省、public...原创 2021-05-05 18:46:10 · 74 阅读 · 0 评论