
java初学者
程序员胡默默
记录学习编程的一点一滴。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
框架设计的必需品——反射
反射:框架设计的灵魂* 框架:半成品软件。可以在框架的基础上进行软件开发,简化编码* 反射:将类的各个组成部分封装为其他对象,这就是反射机制* 好处:1.可以在程序运行过程中,操作这些对象。2.可以解耦,提高程序的可扩展性。* 获取Class对象的方式:1.Class.forName("全类名"):将字节码文件加载进内存,返回Class对象* 多用于配置文件...原创 2022-01-19 15:04:51 · 102 阅读 · 0 评论 -
Junit单元测试
测试分类:1.黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。2.白盒测试:需要写代码的。关注程序具体的执行流程。 Junit使用:白盒测试* 步骤:1.定义一个测试类(测试用例)* 建议:* 测试类名:被测试的类名TestCalculatorTest* 包名:xxx.xx...原创 2022-01-19 11:17:48 · 81 阅读 · 0 评论 -
JDBC——数据库的连接
JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。步骤:1.导入驱动jar包 mysql-connector-java-5.1.37-bin.jar1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下...原创 2022-01-14 22:39:12 · 113 阅读 · 0 评论 -
线程的创建方式
创建方式:1.继承Thread类步骤:① 定义一个线程类继承Thread 类 ②重写run方法,里面是定义线程以后要做什么 ③ new一个新线程对象 ④ 调用start方法启动线程(执行的还是run方法)2.实现Runable接口①定义一个线程任务类,实现Runable接口②重写run方法,定义线程执行任务③创建一个任务对象(MyRunable) ...原创 2022-01-12 15:56:40 · 171 阅读 · 0 评论 -
异常——面试常考问题
运行时异常:1、数组索引越界异常:ArrarIndexOutofBoundsException2、空指针异常:NullPointerException3、类型转换异常:ClassCastException4、数字操作异常:ArithmeticException5、数字转换异常:NumberFormatException自定义异常:package com.itheima.d9_exception_custom;public class ExceptionDemo {原创 2022-01-08 16:50:58 · 217 阅读 · 0 评论 -
Stream流案例
需求:某个公司开发部门,分为开发一部和二部,现在需要进行年终数据计算分析:1,员工信息至少包含了(姓名,性别,工资,奖金,处罚记录)2,开发一部一共有四名员工,开发二部一共有五名员工3,分别筛选两个部门员工的最高工资信息,封装成员工对象Topperfarmer4,分别统计出两个部门的平均月收入,要求去掉最高工资和最低工资5,统计两个开发部门整体的平均工资,去掉最高和最低工资的平均值package StreamTest;public class Employee {原创 2022-01-08 15:15:35 · 548 阅读 · 0 评论 -
集合——定义一个集合对象储存电影
package com.itheima.demo8;public class Movie { private String name; private double score; private String actor; public Movie() { } public Movie(String name, double score, String actor) { this.name = name; this.原创 2022-01-07 11:02:26 · 450 阅读 · 0 评论 -
数组操作工具类——Arrays类
package com.itheima.demo6;import java.util.Arrays;import java.util.Comparator;public class ArraysDemo1 { public static void main(String[] args) { //目标:自定义数组的排序规则,Comparator比较器对象 //1.Arrays的sort方法对于默认有值特性的数组是升序排序 int[] ages.原创 2022-01-06 18:29:57 · 303 阅读 · 0 评论 -
面试问题——正则表达式验证
以前遇见到的一个面试问题:完成一个校验金额格式是否正确package com.itheima.demo5;import java.util.Scanner;public class regexTest { public static void main(String[] args) { checkMoney(); } public static void checkMoney(){ Scanner sc = new Scanner(S原创 2022-01-06 16:19:26 · 276 阅读 · 0 评论 -
打印整形数组的内容——拼接
需求:设计一个方法用于输出任意整形数组中的内容,要求输出的格式如下:“该组的内容为:【11,22,33,44,55】”package com.itheima.demo3;public class StringBuilderTest { public static void main(String[] args) { int[] arr1 = null; System.out.println(toString(arr1)); int[]原创 2022-01-05 17:45:09 · 291 阅读 · 0 评论 -
多态综合案例——电脑的USB 接口
使用面向对象编程模拟:设计一个电脑对象,可以安装两个USB 设备鼠标:安装时可以完成接入,调用点击功能,拔出功能键盘:安装时可以完成接入,调用打字功能,拔出功能步骤:这两个共有的功能可以创建一个接口package com.itheima.demo2;/** * USB接口 == 规范 */public interface USB { //插入,拔出 void connect(); void unconnect(); }原创 2022-01-05 12:30:43 · 450 阅读 · 0 评论 -
抽象类——加油站加油
抽象类:格式: 修饰符 abstract class 类名抽象方法:抽象类中定义的子类必须完成功能的功能的基本需求格式: 修饰符 abstract 返回值类型 方法名称(形参列表)抽象类是用来被继承的,抽象方法是交给子类重写实现的。一个类如果继承了抽象类,那么这个类必须重写完抽象类的全部抽象方法,否则这个类也必须定义成抽象类。(用我通俗的理解就是。一般父类是抽象类的话,他所定义的那些抽象方法,你这个子子类也要用到这些方法)。抽象的特点:有得有失( 不能创建对象)(留一个枚举的格式原创 2022-01-04 22:14:43 · 1674 阅读 · 0 评论 -
static应用——两种单例模式
懒汉单例模式:再用类获取对象的时候,对象已经提前创建好了在拿对象的时候比较方便更快。package com.itheima.demo1;//目标:使用饿汉单例方式定义单例类public class SingLeInstance1 { /** * 2.定义一个公开的静态的成员变量储存一个类的对象, * 饿汉:在这里加载静态变量的时候就会创建对象了 */ public static SingLeInstance1 instance = new Sin原创 2022-01-03 12:51:20 · 263 阅读 · 0 评论 -
综合案例——ATM系统
这是一个银行的ATM系统,主要功能包括查询账户,存钱,取钱,转账,修改密码,退出,注销几个基本功能,每个功能都是通过方法来进行编程,这样的好处就是其他功能想要用到某一功能可以直接调用,这里面包含很多这样的案例,就像第一个查询用户对象,其他几个功能都需要用到,转账钱要用到先查询用户,取钱也要确认,所以可以直接调用,极其的方便,而且代码比较美观。这个也只是基本的功能,但是好多内容还需要根据个人去丰富。代码在下面给大家列出来了,唔。。。好像有点多,不过很是通俗易懂,如果不懂可以下面评论留言,我知道的会一一解答呀!原创 2022-01-02 19:31:10 · 268 阅读 · 0 评论 -
面向对象编程——模拟购物车模块
package com.heima.createobiect;import java.util.Scanner;//购物车模块模拟public class ShopCarTest { public static void main(String[] args) { //1.定义商品类,用于后期创建商品对象 //2.定义购物车对象,使用一个数组对象表示 .原创 2022-01-01 14:44:38 · 540 阅读 · 0 评论 -
案例7:双色球系统开发
kage com.itheima;import java.util.Random;import java.util.Scanner;public class Test6 { public static void main(String[] args) { //1.随机6个红球号码(1-33,不能重复),随机一个篮球号码(1-16),可以采用数组装起来作为中奖号码 int[] luckNumbers = createLuckNumber(); .原创 2021-12-31 22:40:54 · 493 阅读 · 0 评论 -
案例5:评委打分
package com.itheima;import java.util.Scanner;public class Test5 { public static void main(String[] args) { int scores[] = new int[6]; Scanner sc = new Scanner(System.in); for (int i = 0; i < scores.length; i++) { .原创 2021-12-31 18:29:03 · 538 阅读 · 0 评论 -
案例4:数组元素的复制
需求:把一个数组中的元素复制到另一个新数组中去分析:1.需要动态初始化一个数组,长度与原数组一样2.遍历原数组的每个元素,依次赋值给新数组3.输出两个数组的内容package com.itheima;public class Test4 { public static void main(String[] args) { int [] arr1 = {11,22,33,44}; int[] arr2 =new int[arr1.length]原创 2021-12-31 18:10:31 · 479 阅读 · 0 评论 -
案例3——开发验证码
需求:定义方法实现随机产生一个5位的验证码,每位可能是数字、大写字母、小写字母。分析:1.定义一个方法,生成验证码返回:方法参数是位数,方法的返回值类型是String。2.在方法内部使用for循环生成指定位数的随机字符,并连接起来。3.把连接好的随机字符作为一组验证码进行返回。package com.itheima;import java.util.Random;public class Test3 { public static void main(String[]原创 2021-12-31 17:55:28 · 643 阅读 · 0 评论 -
案例2——求100-200之间的所有素数
package com.itheima;public class Test2 { public static void main(String[] args) { //1.定义一个循环,找出101-200之间的全部数据 for (int i = 101; i <= 201 ; i++) { //i = 101 102 103 ..... 199 200 //信号位:标志 bo.原创 2021-12-31 17:14:23 · 368 阅读 · 0 评论 -
案例:购买飞机票的价格
package com.itheima;import java.util.Scanner;/* 需求:机票价格按照淡季旺季,头等舱和经济舱收费,输入机票原价、月份和头等舱或经济舱。 按照如下规划计算机票价格:旺季:(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折 */public class Test1 { public static void main(String[] args) { //3.原创 2021-12-31 16:53:22 · 980 阅读 · 0 评论 -
面试经典例题——对比两个数组是否相同
package com.heima.methon;public class MethonCase4 { public static void main(String[] args) { int[] arr1 = {10,20,30}; int[] arr2 = {10,120,30}; System.out.println(compare(arr1,arr2)); } public static boolean compare(i.原创 2021-12-31 16:03:46 · 651 阅读 · 0 评论 -
打印任意数中的数组内容
package com.heima.methon;//打印任意整数数组的内容public class MethodCase3 { public static void main(String[] args) { int[] ages = {10,20,30,40}; prinArray(ages); System.out.println("-----------------------------------"); int[] .原创 2021-12-31 15:43:33 · 304 阅读 · 0 评论 -
密码锁问题——死循环
package com.itheima.loop;import java.util.Scanner;public class Mimasuo { public static void main(String[] args) { //1.定义正确的密码 int okPassword = 520 ; //2.定义一个循环让用户不断的输入密码认证 Scanner sc = new Scanner(System.in); .原创 2021-12-30 22:19:13 · 592 阅读 · 0 评论 -
经典例题:求水仙花数及其个数
package com.itheima.loop;import org.w3c.dom.ls.LSOutput;public class ForDemo1 { public static void main(String[] args) { //学会使用For循环,并理解它的执行流程 /*需求,在控制台输出输出所有的“水仙花数”,水仙花数必须满足如下两个要求: 1.水仙花数必须是一个三位数 2.水仙花的各个位,十位,百位的数字.原创 2021-12-30 19:08:48 · 1805 阅读 · 0 评论 -
java基础语法
关键字:●java自己保留的一些单词,如public,class,byte.........●我们不能用来作为类名或者变量名称,否则报错。●注意:关键词很多,不用刻意去记。标识符:标识符就是由一些字符、符号组合起来的名称,用于给类、方法、变量等起名字的规矩。●基本要求:有字母,数字,下划线(-)和美元($)组成●强制要求:不能以数字开头,不能是关键字、区分大小写命名指导规范:●变量名称:满足标识规则,建议全英文、有意义、首字母小写、满足“驼峰模式”,例如:...原创 2021-12-30 16:59:55 · 225 阅读 · 0 评论