
java-哇
Java学习笔记
芭蕉的测试之旅
如果你注定要成为一个厉害的人,那么答案就在你的血脉里。
展开
-
Java--单例设计模式
单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。一、设计步骤1、构造方法私有化2、声明一个本类对象3、给外部提供一个静态方法获取对象实例Tips:Lazy 初始化,延迟初始化,是延迟到需要域的值时才将它初始化的这种行为。二、几种原创 2021-11-23 14:31:47 · 108 阅读 · 0 评论 -
Java--代码块
1、普通代码块:在方法中写的代码块,常用。public class Test { public void study( ) { //普通代码块 //大括号用于限制代码块的作用域 System.out.println("普通代码块!"); }}2、构造块:在类中定义的代码块,在创建对象的时候会被调用,执行顺序优先于普通代码块,不太常用。class Test { System.out.println("构造块!");}3、静态代码块:同样也是在类中原创 2021-11-23 10:45:20 · 253 阅读 · 0 评论 -
Java--static关键字修饰属性
一、static关键字的作用1、修饰一个属性用static关键字修饰变量,变量则变为了全局变量2、修饰一个方法原创 2021-11-22 18:01:14 · 1436 阅读 · 0 评论 -
Java--对象的一对一关系
所谓一对一关系,就好比如一个丈夫对应一个妻子,一本书对应一个作者。 若想只实例化一个丈夫对象,就能获得他妻子的名字、年龄,这就需要两个对象产生关系。实现思路:在丈夫类中实例化一个妻子的对象,作为丈夫类中的一个属性,在实例化丈夫这个对象的时候,顺便传进去妻子的对象即可,两个对象就产生了关系例子:public class test { // 先建立 Husband 类 class Husband{ private String name...原创 2021-10-09 16:50:17 · 780 阅读 · 2 评论 -
Java---值传递与引用传递
一、值传递 值传递,是在栈内存里边存放值。public class Test { public static void main(String []args) { int x=10; method(x); System.out.println("x=" + x); } public static void method(int mx){ mx =20; }} 程序运行结果为 10。具体的内存占用分析如下图: ...原创 2021-09-11 18:00:21 · 114 阅读 · 0 评论 -
Java---this关键字
this关键字是一个非常重要的概念。试用this关键字可以完成以下操作:1.调用类中的属性public class Test { public static void main(String []args) { Dog dog = new Dog(); dog.setName("绿豆"); dog.eat(); }}class Dog{ private String name; public void setName(String...原创 2021-09-08 11:38:34 · 112 阅读 · 0 评论 -
Java---构造方法
构造方法就是类构造对象时使用的方法,用于对象的初始化工作。构造方法是实例化一个类的对象时,也就是 new 的时候,最先调用的方法。 一、定义 构造方法是在类中定义的,定义格式为:方法名称与类名称相同,无返回值类型声明。public class Test { public static void main(String []args) { Dog dog = new Dog(); Dog dog = new Dog("...原创 2021-09-08 11:12:35 · 212 阅读 · 0 评论 -
Java---成员变量和局部变量
一、成员变量和局部变量的区别1.在类中的位置不同 成员变量:在类中定义 局部变量:在方法中定义或者方法的参数2.在内存中的位置不同 成员变量:在堆内存(成员变量属于对象,对象进堆内存) 局部变量:在栈内存(局部变量属于方法,方法进栈内存)3.生命周期不同 成员变量:随着对象的创建而存在,随着对象的销毁而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失4.初始化值不同...原创 2021-09-08 10:32:04 · 171 阅读 · 0 评论 -
Java---面向对象
一、面向对象基本概念1.面向对象与面向过程两种编程思维的区别面向过程:以步骤为单位,一步一步完成某个具体事情; 面向对象:以对象为单位,通过调度组合不同的对象来完成某一个事情。2.建立面向对象的思维方式 (1)先整体,再局部 (2)先抽象,再具体 (3)能做什么,再做什么tips:Java是纯面向对象的语言二、类与对象1.基本定义 类:分类、类别;类是一组具...原创 2021-09-06 11:30:57 · 144 阅读 · 0 评论 -
Java---双色球案例
一、双色球玩法双色球投注区分为红球号码区和蓝球号码区,红球号码范围为01~33,蓝球号码范围为01~16。双色球每期从33个红球中开出6个号码,从16个蓝球中开出1个号码作为中奖号码,双色球玩法即是竞猜开奖号码的6个红球号码和1个蓝球号码,顺序不限二、设奖及中奖三、案例实现模拟双色球: 1.用户选择是自己自选号码,还是随机生成号码 2.接收用户选择的号码(6红,1蓝) 3.系统随机生成号码(6红,1蓝) 4.比较系统号码和中奖号码,记录中奖...原创 2021-09-02 18:16:58 · 584 阅读 · 0 评论 -
Java--Arrays工具类
一、定义 Arrays工具类,包含了许多用于操作数组(比如排序和搜索)的各种方法,比较常用的方法包括:Tips:查找Java配套类的说明使用文档,可以去下载一个 JDK API 1.6版本的文档,里边是中文描述,各类方法的解释说明以及如何使用都可以较为方便的查询到。...原创 2021-08-25 20:29:12 · 187 阅读 · 0 评论 -
Java--二分法查找算法
一、算法思想 二分法查找,也称折半查找:前提是在已经排好序的数组中,通过将待查找的元素与中间索引值对应的元素进行比较,若大于中间索引值对应的元素,则去右半部分查找;否则,去左半部分查找。以此类推,直到找到为止;若都没找到,则返回一个负数。二、算法案例public class Test { public static void main(String []args) { int[] aiyo={20, 30, 55, 67, 79, 81, 97, 100};...原创 2021-08-25 15:36:04 · 2245 阅读 · 0 评论 -
Java--插入排序算法
一、算法思想 从后往前找到合适的位置后插入。 每步将一个待排序的元素进行记录,按其顺序码大小插入到前面已经排序的子序列的合适位置,直至全部插入排序完为止。二、案例数组排列public class Test { public static void main(String []args) { int[] num = {24, 4, 75, 35, 23, 66}; //需要排序的数组 //外循环控制轮数 for(int...原创 2021-08-23 11:38:09 · 96 阅读 · 0 评论 -
Java--选择排序算法
一、算法思想 每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好的数列的最后,直到全部待排序元素排完。 tips:选择排序是不稳定的排序方法。二、案例数组排序public class Test { public static void main(String []args) { int[] num = {24, 4, 75, 35, 23, 66}; //需要排序的数组 int min = 0; ...原创 2021-08-23 11:10:06 · 94 阅读 · 0 评论 -
Java--冒泡排序
一、算法原理 冒泡排序,依次比较相邻的元素,若前边的元素大于后边的元素,则交换它们的位置。这样一轮完成后,最后一个数应当是所有元素中最大的。然后再重复一轮上述步骤,依次比较相邻的元素,除了最后一个元素。每重复一轮上述步骤,则少比较一个元素,直到无元素需要再比较。二、案例数组排序public class Test { public static void main(String []args) { int[] num = {24, 4, 75, 35, ...原创 2021-08-23 10:39:17 · 94 阅读 · 0 评论 -
Java--数组
一、数组的定义 数组,是一组能够存储相同数据类型的变量的集合。因为当我们面对许多相同数据类型时,如果采用单独的变量进行存储,则需要定义若干个变量名,非常繁琐,不利于维护。1.语法(1)使用默认的初始值来初始化数组的每一个元素 数据元素类型[ ] 数据名 = new 数据元素类型[ 数组中元素的个数]; eg:int[ ] scores = new int[3];(2)先声明,再赋默认的初始值 数据...原创 2021-08-17 13:57:58 · 162 阅读 · 0 评论 -
Java--方法
一、方法的定义(1)方法定义:方法,又叫函数,就是一段特定功能的代码块。方法可以提高程序的复用性和可读性。在未调用时,方法是不会运行的。(2)语法格式:访问权限修饰符 其他修饰符 返回值类型 方法名(参数类型 形参1, 参数类型 形参2,..){ 方法体; return 返回值;} public 访问权限修饰符 static 静态修饰符,描述的方法可以直接调用 void 返回值类型(无返回值)二、方法的形...原创 2021-08-16 14:23:33 · 73 阅读 · 0 评论 -
Java---循环语句
一、while1.语法:while(条件表达式){ 语句块;}运行逻辑:符合条件则循环继续执行;否则,循环退出特点:先判断再执行2.案例二、do while三、fyunyun原创 2021-08-16 10:29:00 · 103 阅读 · 0 评论 -
Java--判断语句
一、if语句 if条件结构是根据条件判断之后再做处理。(1)简单 if 语句格式一:执行过程中,程序会首先判断条件表达式是否为真;为真则执行if{ }内的执行语句;否则则执行else{ }内的执行语句。if(表达式){ 执行语句;}else{ 执行语句;}(2)嵌套 if 语句格式二:执行过程中,程序会首先判断条件表达式1是否为真 -> 为真则执行if(条件表达式1){ }内的执行语句,然后整个 if-els...原创 2021-08-04 11:29:47 · 4823 阅读 · 0 评论 -
Java---基础知识集锦
一、关键字保留关键字:const 和 goto,来源于C/C++,属于关键字但不怎么使用到。二、转义字符常用的一些转义字符:\n 换行,由当前位置跳到下一行开头 \r 回车,将当前位置移到本行开头 \t 水平制表符,跳跃到下一个Tab位置 \\ 代表一个反斜杠 '\' \' 代表一个单引号(撇号)字符 \'' 代表一个双引号字符 例子://转义字符public class test{ public ...原创 2021-08-03 12:37:11 · 93 阅读 · 0 评论 -
Java—基本数据类型转换
1. 自动类型转换:容量小的类型自动转换成容量大的数据类型。 (1) byte,short,int三种类型,在计算时,会自动转换成 int 类型。// byte -> short 自动转换public class Test{ public static void main(String[] args){ byte b = 10; short s = b; }}// short -> int 自动转换public class .原创 2021-07-29 17:26:08 · 177 阅读 · 0 评论 -
章节一 Java开发准备
课时一:发展历史1、具体内容 Java是一门编程语言,Java已经成为了事实意义上的程序的开发标准结构。 2003年的时候出了一件很有意义的事情,据说有一个美国的卫星项目上使用了Java开发了一些程序。 如果要想认识Java就需要从1991年的GREEN项目开始谈起。 这个项目主要功能就是运用E-mail来控制家电产品的运行。最早SUN的工...原创 2018-07-28 15:41:29 · 314 阅读 · 0 评论 -
章节三 Java数据类型划分
课时七 Java数据类型的划分(简介)1.知识点: (1)java中各个数据类型的定义; (2)java各种数据类型的使用; (3)观察String类型的使用。2.具体内容(重点) 任何的程序严格来讲都属于一个数据的处理游戏。所以对于数据的保存就必须有严格的限制,这些限制就体现在数据类型的划分上,即:不同的数据类型可以保存...原创 2018-08-07 16:50:34 · 240 阅读 · 0 评论 -
章节二 java基本概念
课时4 CLASSPATHhuan环境属性1.知识点: (1)CLASSPATH属性的作用 (2)CLASSPATH属性的设置 2.具体内容 CLASSPATH在开发之中最为有用处的一个属性,下面先来了解一下CLASSPATH的基本作用。 现在假设有一个Hello.class文件保存在:“D:\Testdemo"目录下...原创 2018-07-29 10:08:59 · 171 阅读 · 0 评论