![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java学习笔记
gdutlog
这个作者很懒,什么都没留下…
展开
-
ssm框架学习笔记
ssm框架学习1、什么是框架它是我们软件开发中的一套解决方案,不同的框架解决的是不同的问题。使用框架的好处: 框架封装了很多的细节,使开发者可以使用极简的方式实现功能,大大提高开发效率2、三层架构表现层:用于展示数据业务层:处理业务需求持久层:和数据库交互3、持久层技术解决方案JDBC技术:Connection PreparedStatement ResultSetSpring的JdbcTemplate: Spring中对jdbc的简单封装Apa原创 2021-08-14 16:35:22 · 433 阅读 · 0 评论 -
学习笔记---自定义异常
自定义异常- 图片均来自B站狂神说代码示例:package MyException;public class MyException extends Exception{ //传递数字>10则报错 private int detail; public MyException(int a){ this.detail = a; } //toString 异常地打印信息 @Override public Stri原创 2021-02-09 13:27:42 · 79 阅读 · 0 评论 -
学习笔记---捕获和抛出异常
捕获和抛出异常抛出异常捕获异常关键词:try,catch,finally,throw,throws功能介绍:try:监控区域catch:想要捕获的异常类型finally:处理善后工作,一定执行throw:多在方法内使用throws:在方法的声明定义处使用try-catch-finally代码示例:若要捕获多个异常,需从小到大package Exception;public class Demo01 { public static voi原创 2021-02-08 16:29:26 · 138 阅读 · 2 评论 -
学习笔记---Error和Exception
错误和异常图片均来自B站狂神说原创 2021-02-08 16:05:29 · 79 阅读 · 0 评论 -
学习笔记---内部类
内部类1. 成员内部类(普通内部类)最常见的内部类之一,其定义也很简单,在一个类里面作为类的一个字段直接定义public class Outer { public class inner{ }}成员内部类可以访问外部类所有的属性和方法。但是外部类要访问成员内部类的属性和方法,必须要先实例化成员内部类。注意点:成员内部类里面不能包含静态的属性和方法package oop.Demo09;public class Outer { public原创 2021-02-08 15:30:23 · 287 阅读 · 0 评论 -
学习笔记---接口
接口[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-62Mqsmji-1612762034292)(C:\Users\杨维彬的电脑\AppData\Roaming\Typora\typora-user-images\image-20210208125419158.png)]图片来自B站狂神说注意点:抽象类用abstract声明定义,而接口用interface声明定义抽象类继承用extends,单继承;而接口继承用implements,可以多继承子原创 2021-02-08 13:27:24 · 66 阅读 · 0 评论 -
学习笔记---抽象类
抽象类1. 抽象类与抽象方法:抽象类是指在普通类的结构里面增加抽象方法的组成部分。抽象类用来描述一个类型具备的基本特征和功能,具体的实现方式以及细节由子类去重写实现抽象方法是只声明了方法,但没有方法体的方法抽象方法只能出现在抽象类中,但抽象类中可以存在其他普通方法抽象类无法创建对象,只能被子类继承后,创建子类对象子类必须重写父类中的所有抽象方法,若子类没有重写父类中的所有方法,则子类也必须定义为抽象类2. 注意点:由于抽象类中也有一些属性,所以抽象类中也有构造器,存在目的是为了属性的原创 2021-02-07 18:02:46 · 88 阅读 · 1 评论 -
学习笔记---static关键字详解
static关键字详解static静态变量或方法可直接被类使用,如Student.age = 10;非静态变量或方法在使用时需要new一个对象,通过对象进行调用在static静态方法中不能调用非静态方法,因为static静态方法是和类一起加载的,此时非静态方法还未加载出来,编译器认为其不存在在非静态方法中可以调用static静态方法static静态代码块只执行一次执行顺序:静态代码块>匿名代码块>无参构造器静态导入某个工具类中的某个方法,详情见下面代码例:impor原创 2021-02-07 13:32:58 · 114 阅读 · 0 评论 -
学习笔记---对象类型的转换
对象类型的转换注意点:父类为高级,子类为低级从高级转到低级需要强制转换,从低级转到高级则自动转换子类转为父类时,可能丢失一些自己的方法方便方法的调用,减少代码的重复,做到简洁格式:((子类)对象名).xxx方法代码示例:package oop.Demo05;public class Student extends Person{ @Override public void run() { System.out.println("son")原创 2021-02-07 00:28:28 · 103 阅读 · 0 评论 -
学习笔记---instanceof
instanceof1. 作用:判断某个对象与某个类型是否能够强制转换2. 注意点:通过编译需要这个对象的类型与比较类型有父子类关系true或false主要看对象的右边 即Father f1 = new Son(); 中主要看Son与其他类型的关系代码示例:package oop.Demo05;public class Person { public void run(){ System.out.println("run"); }}packa原创 2021-02-07 00:09:29 · 111 阅读 · 1 评论 -
学习笔记---多态
多态- 图片来自B站狂神说Java多态注意事项:多态是方法的多态,属性没有多态父类和子类 有联系 转换类型异常需要有继承条件,方法需要重写,父类引用指向子类对象! Father f1 = new Son();static 方法,属于类,它不属于实例final 常量,不可改变private 私有的总结:一个对象的实际类型是确定的,但可以指向的引用类型是不确定的,父类可以引用指向子类、对象能执行哪些方法主要看左边的类型,与右边的关系不大子类可以使用从父类继承原创 2021-02-06 23:42:34 · 108 阅读 · 1 评论 -
学习笔记---方法的重写
方法重写要求需要有继承关系,在子类中重写父类中的方法,注意属性没有重写这一概念方法名,参数列表必须相同修饰符:范围可以扩大但不能缩小 (public>Protected>Default>private)抛出的异常:范围可以被缩小但不能扩大子类与父类的方法必须一致,方法体不同为什么要重写父类的功能,子类不一定需要或者不一定满足快捷键:Alt+Insert Override代码示例:静态方法没有重写package o原创 2021-02-06 22:50:07 · 78 阅读 · 0 评论 -
学习笔记---super详解
super详解用法:super用于引用父类的属性或方法,super.xxx与this.xxx相对应子类无参构造器中有一句隐藏代码:调用父类无参构造器若显示地调用该父类无参构造器super(),必须放在子类构造器的第一行注意点:super调用父类的构造方法,必须在子类构造方法的第一行super只能出现在子类的方法或构造方法中super和this不能同时调用构造方法和this的区别:代表的对象不同this:本身这个类的对象super:代表父类对象的引用前提原创 2021-02-06 22:14:35 · 95 阅读 · 0 评论 -
学习笔记---继承
继承图片来自B站狂神说关键词:extends在java中,所有的类,都默认直接或间接地继承Object快捷键 Ctrl+h 可查看继承关系子类拥有父类所有的方法package oop.Demo04;public class Person { private int money = 1000000; public void say(){ System.out.println("说了一句话"); } public in原创 2021-02-06 13:35:43 · 74 阅读 · 0 评论 -
学习笔记---封装详解
封装详解图片来自B站狂神说关键词:private作用:提高程序的安全性,保护数据隐藏代码实现细节统一接口系统可维护性增加package oop.Demo03;public class Student { /* 1. 提高程序的安全性,保护数据 2. 隐藏代码实现细节 3. 统一接口 4. 系统可维护性增加 */ private String name;//姓名 pri原创 2021-02-06 13:05:43 · 697 阅读 · 0 评论 -
学习笔记---构造器详解
构造器详解构造器定义一个类即使什么都不写也会存在一个方法,即构造器和类名相同没有返回值作用使用new关键字本质是调用构造器初始化对象的值注意点定义有参构造之后,若想使用无参构造,必须显示地定义无参构造package oop.Demo01;public class Person { //一个类即使什么都不写,它也会存在一个方法,即构造器 String name; int age; //显示的定义构造器 //原创 2021-02-05 20:45:39 · 102 阅读 · 0 评论 -
学习笔记---方法的调用
方法的调用静态方法非静态方法形参和实参值传递和引用传递this关键字静态方法:在定义方法时加static,可直接调用非静态方法在定义方法时不加static,不可直接调用,需要new一个对象package oop.Demo02;public class Student { //非静态方法 public void Say(){ System.out.println("学生说话了!"); }}package oop.Demo02原创 2021-02-05 20:04:51 · 91 阅读 · 0 评论 -
学习笔记---类和对象的创建
类与对象的创建类的组成:属性(字段)和方法一个项目中只能有一个main方法类是抽象的,需要实例化类示例化后会返回一个自己的对象Student xm = new Student();xm对象就是一个Student类的具体实例package oop.Demo01;public class Student { //属性:字段 String name; //null int age; //0 //方法 public v原创 2021-02-05 19:41:18 · 114 阅读 · 0 评论 -
学习笔记---稀疏数组
稀疏数组图片来自B站狂神说代码示例:package array;import java.util.Arrays;//稀疏数组public class ArrayDemo07 { public static void main(String[] args) { int[][] a = new int[11][11]; a[1][2]=1; a[2][3]=2; //输出原有的数组 System.ou原创 2021-02-05 17:31:18 · 90 阅读 · 0 评论 -
学习笔记---数组内存分析及三种初始化方式
数组内存分析声明语句int[] array在栈中出现一个array,但并未分配空间创建语句array=new int[10]在堆中为数组开辟一份空间三种初始化方法静态初始化动态初始化默认初始化(默认初始化为0)代码示例:package array;public class ArrayDemo02 { public static void main(String[] args) { //静态初始化 int[] nums={1,2,3,4,5原创 2021-02-04 17:51:26 · 81 阅读 · 0 评论 -
学习笔记---可变参数
可变参数图片来自B站狂神说package method;public class Demo04 { public static void main(String[] args) { PrintMax(1.0,9.2,4.5,1.2); } public static void PrintMax(double... a){ if(a.length==0){ System.out.println("没有输入数据!!!原创 2021-02-04 14:02:07 · 66 阅读 · 0 评论 -
学习笔记---方法的重载
方法的重载图片来自B站狂神说代码示例:package method;//方法的重载public class Demo03 { public static void main(String[] args) { int ans1 = add(10, 20); //30 System.out.println(ans1); double ans2 = add(10.0, 20.0); 30.0 System.原创 2021-02-04 13:28:14 · 61 阅读 · 0 评论 -
学习笔记---Scanner进阶使用
Scanner进阶使用Scanner用法总结:new Scanner(System.in);scanner.hasNextxxxx等待用户输入赋值给相应类型的变量对整型数据以及浮点型数据的输入package scanner;import java.util.Scanner;public class Demo05 { public static void main(String[] args) { Scanner scanner = new Scanne原创 2021-02-01 17:12:35 · 111 阅读 · 0 评论 -
学习笔记---用户交互Scanner
用户交互Scanner基本语法:Scanner s = new Scanner(System.in);图片来源B站狂神说package scanner;import java.util.Scanner;public class Demo01 { public static void main(String[] args) { //创建一个扫描器对象,用于接收键盘数据 Scanner scanner = new Scanner(System.in原创 2021-02-01 15:59:06 · 96 阅读 · 0 评论 -
学习笔记---javaDoc
Doc文档注释通过命令行生成文档图片来自B站狂神说格式javadoc 参数 java文件通过IDEA生成文档Tools -->Generate javadoc -->other command …中写入-encoding utf-8 -charset utf-8package operator;/** * @author gdutlog * @version 1.0 * @since 1.8 */public class Doc { Str原创 2021-02-01 14:57:56 · 66 阅读 · 0 评论 -
学习笔记---java运算符
运算符基本运算符二元运算符+,-,*,/public class Demo01 { public static void main(String[] args) { //二元运算符 int a = 10; int b = 20; System.out.println(a+b); //30 System.out.println(a-b); //-10 System.原创 2021-02-01 11:46:45 · 61 阅读 · 0 评论 -
学习笔记---常量
常量含义 初始化后不能再改变的值,不会变的值 所谓常量可以理解为一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变示例final 常量名=值;final double PI = 3.14; 一般用大写字母...原创 2021-02-01 11:45:33 · 55 阅读 · 0 评论 -
学习笔记---变量类型
变量类型三种类型类变量 static实例变量,从属于对象,如果不进行初始化,这个类型的默认值是0或0.0布尔值默认值为false除了基本类型,其他都是null局部变量,必须声明和初始化值代码实例public class Demo04 { //类变量 static static double salary = 2500; //实例变量,从属于对象;如果不初始化,这个类型的默认值为 0 0.0 //布尔值 默认是false //原创 2021-02-01 11:38:44 · 92 阅读 · 0 评论 -
学习笔记---数据类型转换
数据类型转换数据类型等级[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RZcCMzNX-1612150023916)(C:\Users\杨维彬的电脑\AppData\Roaming\Typora\typora-user-images\image-20210122231827063.png)]运算中,不同类型的数据先转换为同一类型,再进行计算强制类型转换(类型)变量名 高->低自动类型转换低->高代码实例public class原创 2021-02-01 11:29:30 · 117 阅读 · 0 评论 -
学习笔记---数据类型扩展
数据类型扩展public class Demo01 { public static void main(String[] args) { //整数拓展 进制 二进制0b 十进制 八进制0 十六进制0x int a=10; int b=010; int c=0x10; System.out.println(a); System.out.println(b); System.out.原创 2021-02-01 11:23:00 · 76 阅读 · 0 评论 -
学习笔记---hello world
hello world随便创建一个文件夹用来存放代码新建一个java文件文件后缀名为.javahello.java【注意点】系统可能没有显示文件后缀名,需要手动打开编写代码public class hello{ public static void main(String[] args){ System.out.print("hello world!"); }}编译javac java文件,会自动生成一个class文件运行class文件,java cla原创 2021-02-01 11:22:16 · 61 阅读 · 0 评论