java
java学习笔记
鹿其其鹿
学习记录,问题清单
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2021-05-12自定义异常
使用Java内置的异常类可以描述在编程时出现的大部分异常的情况,除此之外,用户还有自定义异常,只需继承Exception类即可 在程序中使用自定义异常类 大体可以分为以下几个步骤: 创建自定义异常类 在方法中通过throw关键字抛出异常对象 如果在当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理,否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作 在出现异常方法的调用者中捕获并处理异常 package com.exception2; //.原创 2021-05-12 17:58:59 · 111 阅读 · 0 评论 -
2021-05-12捕获和抛出异常
异常处理机制 抛出异常 捕获异常 异常处理的五个关键字:try,catch,finally,throw,throws package com.exception; public class Test { public static void main(String[] args) { int a = 1; int b = 0; //快速生成捕获抛出异常代码:Ctrl+Alt+T //假设要捕获多个异常,需要从小到大去捕获原创 2021-05-12 17:31:12 · 115 阅读 · 0 评论 -
2021-05-12Error和Exception
异常 三种类型的异常 检查性异常:最具代表性的检查性异常就是用户错误或问题引起的异常,这是程序员无法预见的,这些异常在编译时不能被简单地忽略 运行时异常:运行时异常是看你被程序员避免的异常,与检查性异常相反,运行时异常可以在编译时被忽略 错误Error:错误不是异常,而是脱离程序员控制的问题,错误在代码中通常被忽略。例如,当栈溢出的时候,一个错误就发生了,它们在编译时也检查不到 异常体系结构 java把异常当做对象来处理,并定义了一个基类java.lang.Throwable作为所有异常的超类 在Jav原创 2021-05-12 17:01:48 · 225 阅读 · 0 评论 -
2021-05-12内部类
内部类 内部类就是在一个类的内部再定义一个类 成员内部类 静态内部类 局部内部类 匿名内部类 成员内部类 package oop.demo12; public class Outer { private int id=10; public void out(){ System.out.println("这是外部类的方法"); } public class Inner{ public void in(){ Syste原创 2021-05-12 16:13:10 · 75 阅读 · 0 评论 -
2021-05-12接口的定义与实现
接口 普通类:只有具体实现 抽象类:具体实现和规范(抽象方法)都有 接口:只有规范,自己无法写方法-专业的约束。约束和实现分离:面向接口编程 接口就是规范,定义的是一组规则 接口的本质是契约,就像法律一样,大家都要遵守 OO的精髓,是对对象的抽象,最能体现这一点的就是接口 声明类的关键字是class,声明接口的关键字是interface package oop.demo11; //interface是定义的关键字,接口都需要有实现类 public interface UserService { /原创 2021-05-12 15:43:44 · 190 阅读 · 0 评论 -
2021-05-11抽象类
抽象类 abstract修饰符可以用来修饰方法也可以修饰类,如果修饰方法,那么方法就是抽象方法,如果修饰类那就是抽象类 抽象类中可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类 抽象类不能使用new关键字来创建对象,它是用来让子类继承的 抽象方法,只有方法的声明,没有方法的实现,它是用来让子类实现的 子类继承抽象类,那么就必须要实现抽象了类没有实现的抽象方法,否则该子类也要声明为抽象类 ...原创 2021-05-12 15:19:19 · 97 阅读 · 0 评论 -
2021-05-11static关键字
public class Student { private static int age;//静态变量 private double score;//非静态变量 public void run(){ } public static void go(){ } { System.out.println("匿名代码块"); } static{ System.out.println("静态代码块");原创 2021-05-11 18:51:09 · 99 阅读 · 0 评论 -
2021-05-11instanceof和类型转换
public class Application { public static void main(String[]args){ Object object = new Student(); System.out.println(object instanceof Student); System.out.println(object instanceof Person); System.out.println(object in原创 2021-05-11 18:25:01 · 158 阅读 · 0 评论 -
2021-05-10方法重写多态注意事项
方法重写 package oop.demo6; //重写都是方法的重写,和属性无关 public class B { public static void test(){ System.out.println("B=>test()"); } } package oop.demo6; public class A extends B{ public static void test(){ System.out.println("A=>t原创 2021-05-11 17:30:38 · 124 阅读 · 0 评论 -
2021-05-07封装 继承 super this
封装 高内聚 低耦合 属性私有 get/set原创 2021-05-10 17:01:56 · 73 阅读 · 0 评论 -
2021-05-07构造器
构造器讲解 类中的构造器也称为构造方法,是进行创建对象的时候必须要调用的,并且构造器有两个特点: 必须和类的名字相同 必须没有返回类型,也不能写void 一个类即使什么都不写,他也会存在一个构造方法 package oop.demo2; //java编译之后会生成class文件 public class Person { //一个类即使什么都不写也会存在一个方法 String name; //构造器会实例化初始值 //使用new关键字,本质是在调用构造器 //原创 2021-05-07 16:14:21 · 93 阅读 · 0 评论 -
2021-05-06Vue前后端搭建
Vue前后端搭建 创建一个前端项目 创建一个后端项目 安装依赖 npm install vue-router npm install axios 前端运行:npm run serve 后端运行:npm start原创 2021-05-07 14:55:32 · 76 阅读 · 0 评论 -
2021-04-27类和对象
类与对象的关系 类是一种抽象的数据类型,他是对某一类事物的整体描述/定义,但是不能代表某一个具体的事物 对象是抽象概念的具体实例原创 2021-05-07 15:11:09 · 91 阅读 · 0 评论 -
2021-04-19面向对象 方法调用 值传递
面向对象 面向过程思想: 步骤清晰简单 面向过程适合处理一些较为简单的问题 面向对象思想: 物以类聚,分类的思维模式,思考问题首先会决绝哪些问题需要哪些分类,然后对这些分类进行单独思考,最后,才对某个分类下的细节进行面向过程的思索 面向对象适合处理复杂的问题,适合处理需要多人协作的问题 ...原创 2021-04-27 14:43:39 · 130 阅读 · 0 评论 -
2021-04-16数组
数组 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而来的原创 2021-04-19 21:46:07 · 73 阅读 · 0 评论 -
2021-04-16递归
递归 递归就是自己调用自己 利用结构包括两个部分: 递归头:什么时候不调用自身方法,如果没有头,将陷入死循环 递归体:什么时候需要调用自身方法 public class Demo5 { public static void main(String[]args){ System.out.println(f(5)); } public static int f(int n){ if(n==1){ return 1;原创 2021-04-16 10:21:55 · 72 阅读 · 0 评论 -
2021-04-16方法重载 传参
方法的重载 重载就是在一个类中,有相同的函数名称,但形参不同的函数 方法重载的规则: 方法名称必须相同 参数列表必须不同(个数不同,或类型不同,参数排序列表不同等) 方法的返回类型可以相同也可以不相同 仅仅返回类型不同不足以成为方法的重载 public class Demo3 { public static void main(String[]args){ int max = max(10,20,30); System.out.println(max);原创 2021-04-16 08:57:57 · 99 阅读 · 0 评论 -
2021-04-15方法 方法调用
方法 java方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,,一般情况下,定义一个方法包含以下语法: 方法包含一个方法头和一个方法体 修饰符:修饰符是可选的,告诉编译器如何调用该方法,定义了该方法的访问类型 返回值类型:方法可能会返回值,returnValueType是方法返回值的数据类型,有些方法执行所需的操作,但没有返回值,在这种情况下,returnValueType是关键字void 方法名:是方法的实际名称,方法名和参数表共同构成方法签名 参数类型:参数像是一个占位符,当方法被调用时,原创 2021-04-15 15:38:16 · 100 阅读 · 0 评论 -
2021-04-09Scanner
Scanner对象 基本语法:Scanner s = new Scanner(System.in); 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据 next(): package scanner; import java.util.Scanner; public class Demo1 { public static void main(String[]args){原创 2021-04-15 15:38:57 · 108 阅读 · 0 评论 -
2021-04-09包机制
包机制 包机制用于区别类名的命名空间 包语句的语法格式: package pkg1[. pkg2[. pkg3…]]; 一般用公司域名倒置作为包名 一般是使用import语句在java程序中明确导入包 import package1[.package2…].(classname|*); ...原创 2021-04-09 10:07:27 · 88 阅读 · 0 评论 -
2021-04-06类型转换
类型转换 运算中不同类型的数据转换为同一类型的数据再进行运算 强制类型转换 自动类型转换 public class change { //强制类型转换和自动类型转换 public static void main(String[]args){ //强制类型转换 (类型)变量名 int i = 128; byte b = (byte)i;//内存溢出,byte最大127 System.out.println(i);原创 2021-04-09 09:31:45 · 143 阅读 · 0 评论
分享